我有兩個for-each語句迭代,我希望輸出是在表內的垂直,而不是水平格式。XSL對於每個迭代
目前,它輸出:
a b c
1 2 3
我希望它輸出:
a 1
b 2
c 3
有人可以幫助嗎?下面是XSL:
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output method="html" indent="no"/>
<xsl:key name="names" match="Niche" use="."/>
<xsl:key name="niche" match="row" use="Niche"/>
<xsl:template match="/">
<table border="1">
<xsl:for-each select="//Niche[generate-id() = generate-id(key('names',.)[1])]">
<xsl:sort select="."/>
<td>
<xsl:value-of select="."/>
</td>
</xsl:for-each>
<td><tr></tr></td>
<xsl:for-each select="//row[generate-id(.)=generate-id(key('niche', Niche)[1])]">
<xsl:sort select="Niche"/>
<td>
<xsl:value-of select="count(key('niche', Niche))"/>
</td>
</xsl:for-each>
</table>
</xsl:template>
</xsl:stylesheet>
示例XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<?xml-stylesheet type="text/xsl" href="sample.xsl" ?>
<root>
<row>
<Niche>a</Niche>
</row>
<row>
<Niche>b</Niche>
</row>
<row>
<Niche>b</Niche>
</row>
<row>
<Niche>c</Niche>
</row>
<row>
<Niche>c</Niche>
</row>
<row>
<Niche>c</Niche>
</row>
</root>
你能告訴我們一個你開始使用的XML的例子,很難解釋樣式表在做什麼而沒有看到它。 –