在XSL StyleSheet中将字符串作为HTML对象返回

时间:2011-12-02 12:26:50

标签: xml xslt xpath

我有如下XML:

<Test>
   <Content>
      <innerHtml>
         <div style="font-size:13px;">This letter should be wrap by div element.</div>
      </innerHtml>
   </Content>
</Test>

在XML样式表中,我将此内容称为以下内容:

<xsl:value-of select="innerHtml"/>  

这里出现了问题。我想要的是将“innerHtml”节点的内容打印为HTML对象,而不是字符串。感谢。

2 个答案:

答案 0 :(得分:2)

使用:

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="xml" indent="yes"/>

    <xsl:template match="/">
        <xsl:apply-templates select="//innerHtml"/>
    </xsl:template>

    <xsl:template match="innerHtml">
        <xsl:copy-of select="*"/>
    </xsl:template>

</xsl:stylesheet>

答案 1 :(得分:0)

只需添加disable-output-escaping属性并将其设置为“yes”,如下所示:

<xsl:value-of select="innerHtml" disable-output-escaping="yes"/>