我有一个XML文件说
<Nodes>
<node>12</node>
<node>244</node>
<node>234</node>
<node>45</node>
<node>7</node>
<node>112</node>
<node>64</node>
<node>3</node>
</Nodes>
我想要的是,按照降序排列数据,并将前3个结果存储到变量中。
使用<xsl:sort>
对数据进行排序,但如何将前3个结果存储在变量中,以及如何访问此变量?
我想显示前三个项目的数据。 即。
Value1=244
Value2=234
Value3=112
请询问是否需要更多信息。
答案 0 :(得分:1)
您可以使用position()
功能:
<xsl:for-each select="Nodes/node">
<xsl:sort select="."/>
<xsl:if test="position() < 4">
...
Value<xsl:value-of select="position() + 1"/>=<xsl:value-of select="."/>
...
<xsl:if>
</xsl:for-each>