我有一些XML文本,希望在HTML页面中呈现。这个文本包含一个&号,我想在它的实体表示中呈现:&
我如何转义这个&在源XML?我尝试了&但这被解码为实际的&字符(&),这在HTML中是无效的。
所以我想转义它,这样它会被渲染为&在使用XML输出的网页中。
我有一些XML文本,希望在HTML页面中呈现。这个文本包含一个&号,我想在它的实体表示中呈现:&
我如何转义这个&在源XML?我尝试了&但这被解码为实际的&字符(&),这在HTML中是无效的。
所以我想转义它,这样它会被渲染为&在使用XML输出的网页中。
当前回答
使用CDATA标签:
<![CDATA[
This is some text with ampersands & other funny characters. >>
]]>
其他回答
根据XML 1.0规范的§2.4,你应该能够使用&
我试过了。但这是不允许的。
你确定这不是别的问题吗?XML显式地将此定义为转义&号的方法。
&字符本身是XML中的转义字符,因此解决方案是将它与与&对应的Unicode十进制字符连接起来,从而确保没有XML解析错误。也就是说,将字符&替换为&。
<xsl:text disable-output-escaping="yes">&
,应该没问题。Wikipedia有一个XML格式的预定义实体列表。
使用CDATA标签:
<![CDATA[
This is some text with ampersands & other funny characters. >>
]]>