XSLT <xsl:for-each> 元素

  • 定义和使用

    <xsl:for-each> 元素循环遍历指定节点集中的每个节点。
  • 语法

    <xsl:for-each select="expression">
      <!-- Content -->
    </xsl:for-each>
    
  • 参数

    属性 描述
    select expression 必选的,指定要处理的节点集的XPath表达式。
  • 示例

    下面的示例通过每个 cd 元素循环输出每个 cd 的标题:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
      <xsl:template match="/">
        <div>
          <xsl:for-each select="catalog/cd">
            <p><xsl:value-of select="title" /></p>
          </xsl:for-each>
        </div>
      </xsl:template>
    </xsl:stylesheet>
    下面的示例循环遍历每个 cd 元素,并创建一个表行,其中包含每张 cd 的 title 和 artist 值:
    <?xml version="1.0" encoding="UTF-8"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
      <xsl:template match="/">
        <html>
        <body>
          <h1>Music Collection:</h1>
          <table border="1">
            <tr bgcolor="#9acd32">
              <th>Title</th>
              <th>Artist</th>
            </tr>
            <xsl:for-each select="catalog/cd">
            <tr>
              <td><xsl:value-of select="title" /></td>
              <td><xsl:value-of select="artist" /></td>
            </tr>
            </xsl:for-each>
          </table>
        </body>
        </html>
      </xsl:template>
      
    </xsl:stylesheet>