English | Français | Deutsch | Magyar | >> 中文 << | Polski ZVON > Tutorials > XSLT Tutorial
>> 页 18 << | 上一条 | 下一条 | 目录 | 元素索引

xsl:for-each 指令包含了一个模板,这个模板将会逐个应用到通过 select 属性选中的节点上。

XSLT stylesheet 1

XML源码
<source>

<AAA id="a1" pos="start">
     <BBB id="b1"/>
     <BBB id="b2"/>
</AAA>
<AAA id="a2">
     <BBB id="b3"/>
     <BBB id="b4"/>
     <CCC id="c1">
          <DDD id="d1"/>
     </CCC>
     <BBB id="b5">
          <CCC id="c2"/>
     </BBB>
</AAA>

</source>

输出
<DIV style="color:red">BBB id=b1</DIV>
<DIV style="color:red">BBB id=b2</DIV>
<DIV style="color:red">BBB id=b3</DIV>
<DIV style="color:red">BBB id=b4</DIV>
<DIV style="color:red">BBB id=b5</DIV>
<DIV style="color:navy">CCC id=c1</DIV>

用HTML察看
BBB id=b1
BBB id=b2
BBB id=b3
BBB id=b4
BBB id=b5
CCC id=c1
XSLT stylesheet
<xsl:stylesheet version = '1.0'
     xmlns:xsl='http://www.w3.org/1999/XSL/Transform'>

<xsl:template match="/">
     <xsl:for-each select="//BBB">
          <DIV style="color:red">
               <xsl:value-of select="name()"/>
               <xsl:text> id=</xsl:text>
               <xsl:value-of select="@id"/>
          </DIV>
     </xsl:for-each>
     <xsl:for-each select="source/AAA/CCC">
          <DIV style="color:navy">
               <xsl:value-of select="name()"/>
               <xsl:text> id=</xsl:text>
               <xsl:value-of select="@id"/>
          </DIV>
     </xsl:for-each>
</xsl:template>


</xsl:stylesheet>