这种情况发生在所有经过测试的浏览器中(Chrome,Firefox,Opera ...)
从ajax检索时,某些HTML实体被吞下并且不显示。在HTML源文件中对其进行硬编码时,将显示相同的HTML实体。
以下是实际输出: (实体不在网页或控制台中显示为nether)
以下是预期的输出:
以下是检索实体的JavaScript:
<html>
<head>
<script type="text/javascript">
function injectEntity(){
var xhr = new XMLHttpRequest();
xhr.open("POST", "entity.php", true);
xhr.onreadystatechange = function(){
if(xhr.readyState == 4){
var doc = xhr.responseXML;
console.log(xhr.responseText);
var div = document.getElementById("container");
div.appendChild(doc.getElementById("the-entity"));
}
}
xhr.send(null);
}
</script>
</head>
<body>
<a href="#" onclick="injectEntity();">inject the following entity:</a> ’
<div id="container">
</div>
</body>
</html>
这是用于检索实体的php文件:
<?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();
?>
答案 0 :(得分:0)
你想要’
,而不是’
(这是一个不可打印的控制角色)