我正在进行XSL转换。我正在转换的XML有一个包含html的节点。
<xml>
<text>
<p><b>Hello</b><em>There</em></p>
</text>
</xml>
应用转换:
<xsl:template match="text">
<div class="{name()} input">
<xsl:value-of select="."/>
</div>
</xsl:template>
我得到了输出:
<div class="text input">
Hello There
</div>
但是我希望Html保持原样:
<div class="text input">
<p><b>Hello</b><em>There</em></p>
</div>
用 node()函数替换。会得到相同的结果。
是否有一种方法可以通过转换来修改HTML?
答案 0 :(得分:11)
它应该做你需要的......
<xsl:copy-of select="." />
以上将选择整个当前节点,因此在您的情况下将包含<text>
本身..
使用以下内容选择当前的所有内容..
<xsl:copy-of select="child::node()" />