Это происходит во всех протестированных браузерах (Chrome, Firefox, Opera ...)
Некоторые объекты HTML проглатываются и не отображаются при извлечении из ajax.Та же сущность HTML отображается, когда она жестко закодирована в исходном файле HTML.
Вот фактический результат: (сущность не отображается ни на веб-странице, ни в консоли)
Вот ожидаемый результат:
Вот javascript, который извлекает сущность:
<html><br/><head><br/><script type="text/javascript"><br/> function injectEntity(){<br/> var xhr = new XMLHttpRequest();<br/> xhr.open("POST", "entity.php", true);<br/> <br/> xhr.onreadystatechange = function(){<br/> if(xhr.readyState == 4){<br/> var doc = xhr.responseXML;<br/> console.log(xhr.responseText);<br/> var div = document.getElementById("container"); <br/> div.appendChild(doc.getElementById("the-entity"));<br/> } <br/> }<br/> xhr.send(null);<br/> }<br/></script><br/></head><br/><body><br/> <a href="#" onclick="injectEntity();">inject the following entity:</a> ’<br/> <div id="container"><br/> </div><br/></body><br/></html>
А вот файл php, который используется для извлечения сущности:
<?php<br/><br/>header('Content-type: application/xml; charset=UTF-8');<br/><br/>$xml = new DOMDocument('1.0', 'utf-8');<br/>$tag = $xml->createElement('b','’');<br/>$tag->setAttribute("id","the-entity");<br/>$xml->appendChild($tag);<br/>echo $xml->saveXML();<br/><br/>?>