如何将节点保存到xsl变量?

时间:2013-07-01 11:36:37

标签: xslt xslt-2.0

如何将自定义节点存储到变量?如果我使用它:

<xsl:variable name="test">
    <INFORMATION_DB_CODE_LIST>
            <INFORMATION_DB_CODE>
                <xsl:value-of select="'123'"/>
            </INFORMATION_DB_CODE>
    </INFORMATION_DB_CODE_LIST>
</xsl:variable>

当我得到变量值时:

<xsl:value-of select="ext:node-set($test)"/>

它只返回123

1 个答案:

答案 0 :(得分:3)

在XSLT 2.0中,您不需要node-set函数,因为$test变量已包含&#34;临时树&#34;。问题是<xsl:value-of>为您提供了其参数的字符串值,在元素节点的情况下,它表示所有文本节点后代的串联(因此在这种情况下只是字符串123)。您可能希望copy-of而不是value-of,将元素节点本身复制到输出而不仅仅是其字符串值。