【发布时间】:2012-03-01 00:43:05
【问题描述】:
这发生在所有经过测试的浏览器(Chrome、Firefox、Opera ...)中
某些 HTML 实体在从 ajax 检索时被吞没并且不显示。在 HTML 源文件中硬编码时会显示相同的 HTML 实体。
这是实际的输出:(实体既不在网页中也不在控制台中显示)
这是预期的输出:
这是检索实体的 javascript:
注入以下实体:
这里是用于检索实体的 php 文件:
header('Content-type: application/xml; charset=UTF-8');
$xml = new DOMDocument('1.0', 'utf-8') ;
$tag = $xml->createElement('b','');
$tag->setAttribute("id","the-entity");
$xml ->appendChild($tag);
echo $xml->saveXML();
?>
【问题讨论】:
-
我的猜测是,如果要替换实体,则必须解析文本。您可以使用
innerHTML解析文本。因此,不要使用appendNode,而是使用innerHTML将内容添加到 DOM。
标签: javascript html ajax encoding browser