我的xml文件是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="form.xsl"?>
<Letter xmlns:xsi="http://www.irica.com/ECEP/1383-12/SendSchema-instance" xsi:noNamespaceSchemaLocation="file:ECEP_Letter.xsd">
...
<Keywords>
<Keyword>A</Keyword>
<Keyword>B</Keyword>
<Keyword>C</Keyword>
</Keywords>
</Letter>
现在我想计算Keyword
的数量并将它们放在这样的表中:
1 |甲
2 |乙
3 | ç
我到目前为止编写了这段代码:
...
</table>
<h2>keywords: <xsl:value-of select="count(/Letter/Keywords/Keyword)"/></h2>
<table border="2">
<tr >
<th style="text-align:right">No.</th>
<th style="text-align:right">keyword</th>
</tr>
<xsl:for-each select="Letter/Keywords/Keyword">
<tr>
<td><xsl:value-of select="Keyword" /></td>
<td><xsl:value-of select="."/></td>
</tr>
</xsl:for-each>
</table>
...
它会打印关键字的总数,但在表格中仅打印A
,B
,C
,但不打印数字。
答案 0 :(得分:1)
我没有看到你真的想计算他们 - 只是数字他们,这可以通过以下方式轻松完成:
...
<xsl:for-each select="Letter/Keywords/Keyword">
<tr>
<td><xsl:value-of select="position()"/></td>
<td><xsl:value-of select="."/></td>
</tr>
</xsl:for-each>
...
答案 1 :(得分:0)
而不是这个
<td><xsl:value-of select="."/></td>
这样做
<xsl:value-of select="position()"/>