我有一些XML文本,希望在HTML页面中呈现。这个文本包含一个&号,我想在它的实体表示中呈现:&

我如何转义这个&在源XML?我尝试了&但这被解码为实际的&字符(&),这在HTML中是无效的。

所以我想转义它,这样它会被渲染为&在使用XML输出的网页中。


当前回答

我试过了,但是没用。基于Wim十Brink的答案,我尝试了一下,它起作用了。

我的一个开发伙伴建议我使用&不管它被渲染了多少次,这都是有效的。

其他回答

根据XML 1.0规范的§2.4,你应该能够使用&

我试过了。但这是不允许的。

你确定这不是别的问题吗?XML显式地将此定义为转义&号的方法。

在我的情况下,我不得不把它改为%26。

我需要在URL中转义&。所以,但对我来说行不通。 urlencode函数&变为%26。这样,XML和浏览器URL机制都不会抱怨URL。

当您的XML包含&,这将导致文本&。

当你在HTML中使用它时,它将被呈现为&。

<xsl:text disable-output-escaping="yes">&&nbsp;

,应该没问题。Wikipedia有一个XML格式的预定义实体列表。