共用方式為


<xsl:apply-templates> 元素

指引 XSLT 處理器根據每個選取節點的型別和內容,尋找要套用的適當範本。

<xsl:apply-templates
  select = Expression
  mode = QName
</xsl:apply-templates>

屬性

  • select
    可用來處理運算式所選取的節點,而不需處理所有子系。 select 屬性的值是一種必須評估為節點集的 Expressions (XSLT)。 選取的節點會以文件順序進行處理,除非另外指定了不同的排序順序。

  • 模式
    mode 屬性可讓 限定名稱 (XSLT) 所指定的項目進行多次處理,而且每次都產生不同的結果。 如果 <xsl:template> 沒有 match 屬性,則也不能有 mode 屬性。 若 <xsl:apply-templates> 項目具有 mode 屬性,則此項目僅適用於具有相同 mode 屬性值之 <xsl:template> 項目的範本規則。 若 <xsl:apply-templates> 項目沒有 mode 屬性,則此項目僅適用於沒有 mode 屬性之 <xsl:template> 項目的範本規則。

項目資訊

發生次數

無限制

父項目

xsl:attributexsl:commentxsl:copyxsl:elementxsl:fallbackxsl:for-eachxsl:ifxsl:messagexsl:otherwisexsl:paramxsl:processing-instructionxsl:templatexsl:variablexsl:whenxsl:with-param、輸出項目

項目子系

xsl:sortxsl:with-param

備註

<xsl:apply-templates> 項目首先會使用 select 屬性中所指定的運算式來選取一組節點。 若此屬性保留為未指定,則會選取目前節點的所有子系。 對於每個選取的節點,<xsl:apply-templates> 都會指引 XSLT 處理器尋找適當的 <xsl:template> 來套用。 系統會比較節點與範本的 match 屬性所指定的 XPath 運算式,藉以測試範本的適用性。 若有多個範本符合比對模式,則會選擇優先順序最高者。 若有數個範本優先順序相同,則會選擇樣式表中的最後一個。

下列主題提供 <xsl:apply-templates> 項目的範例。