XSLT <xsl:for-each> Element

Ang elemento ng <xsl:for-each> ay nagbibigay-daan sa iyong paggawa ng pagliko sa XSLT.

Ang elemento ng <xsl:for-each>

Ang elemento ng <xsl:for-each> ay maaaring gamitin upang piliin ang bawat elemento ng tinukoy na node set sa XML.

<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:template match="/">
  <html>
  <body>
    <h2>My CD Collection</h2>
    <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>

Komentaryo:select Ang halaga ng propyedade ay isang ekspresyong XPath. Ang paraan ng paggagamit nito ay katulad ng paghahanap ng isang file system kung saan ang malayang slash (slash) ay maaaring piliin ang subdirectory.

上面的转换结果类似这样:

查看此 XML 文件查看此 XSL 文件atTingnan ang resulta

Pagsusuri ng resulta

Sa pamamagitan ng pagdaragdag ng isang halaga ng pagpili sa elemento ng <xsl:for-each>, maaari rin naming suriin ang mga resulta ng paglabas mula sa XML file.

<xsl:for-each select="catalog/cd"[artist='Bob Dylan']">

Mga lehitimong operasyon sa pagsusuri:

  • =  (katulad)
  • != (hindi katulad)
  • < (makaliwan)
  • > (magbigla)
<?xml version="1.0" encoding="ISO-8859-1"?>
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
<xsl:template match="/">
 <html>
  <body>
  <h2>My CD Collection</h2>
  <table border="1">
   <tr bgcolor="#9acd32">
      <th>Title</th>
      <th>Artist</th>
   </tr>
   <xsl:for-each select="catalog/cd[artist='Bob Dylan"]">
   <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>

上面的转换结果类似这样:

查看此 XML 文件查看此 XSL 文件并查看结果