我的问题是当我在我的xsl样式表中混合html元素时,我对我生成的内容感到困惑,因为XML解析只是抱怨:
Error on line 1 column 1
SXXP0003: Error reported by XML parser: Premature end of file.
这是我的代码
<xsl:template match="myTemplate">
<xsl:variable name="fieldtype" select="Radio"/>
<td width="100px"><span style="word-wrap: break-word">
<xsl:value-of select="$fieldtype"/></span></td>
</xsl:template>
这会显示为
<td width="100px"><span style="word-wrap:break word">Radio</span></td>
答案 0 :(得分:0)
我不确定为什么你需要编码HTML。您向我们展示的HTML没有什么特别之处可以阻止它被解析为有效的XHTML。
如果由于某种原因您必须对HTML进行编码,则使用xsl:attribute
分配属性可能更安全。
<xsl:template match="myTemplate">
<xsl:variable name="fieldtype" select="Radio"/>
<td>
<xsl:attribute name="width">
<xsl:text>100px</xsl:text>
</xsl:attribute>
<span>
<xsl:attribute name="style">
<xsl:text>word-wrap: break-word</xsl:text>
</xsl:attribute>
<xsl:value-of select="$fieldtype"/>
</span>
</td>
</xsl:template>