我只想确认是否可以在xsl变量中插入html标签?
例
例
<xsl:variable name="htmlContent"> <html> <body> hiiii </body> </html> </xsl:variable>
如果我使用
<xsl:value-of select="$htmlContent"/>
我得到了
<html> <body> hiiii </body> </html>
可能吗?我试过了
<xsl:value-of disable-output-escaping="yes" select="$htmlContent"/>
虽然我没有得到所需的输出
解决方法
不要使用value-of,它获取所选节点的文本值.而是使用copy-of,它将整个树(节点和所有树)复制到输出中:
<xsl:copy-of select="$htmlContent"/>
这是一个完整的例子:
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> <xsl:variable name="htmlContent"> <html><body>hiiii</body></html> </xsl:variable> <xsl:template match="/"> <xsl:element name="htmlText"> <xsl:copy-of select="$htmlContent"/> </xsl:element> </xsl:template> </xsl:stylesheet>
这将始终生成xml:
<htmlText> <html> <body>hiiii</body> </html> </htmlText>