我如何做同样的事情,但有任意数量的节点

时间:2014-09-18 14:38:48

标签: xml xslt xslt-2.0

我在xslt中有以下代码。

<xsl:sort
    select="concat( 
        (com:prices/com:price[1]), 
        (com:prices/com:price[2]), 
        (com:prices/com:price[3]), 
        (com:prices/com:price[4]))" />

问题在于,当可能存在无限量的价格时,其硬编码仅为4种价格。什么是连接所有可用价格节点的语法?

为noob问题道歉,但是xslt是我最糟糕/经验最少的语言之一,我在网上发现的所有例子都显得过于复杂。

1 个答案:

答案 0 :(得分:2)

如果您使用XSLT 2.0,那么执行<xsl:sort select="string-join(com:prices/com:price, '')"/>会连接所有价格元素。