我是新手,XMLHttpRequest
但已成功使用GET
.
现在我需要发送POST
和接收XML
。我PHP
的服务器正在接收帖子,甚至以 XML 格式发回数据,但是如果 XML 元素包含类似 html 的代码,我会遇到一个奇怪的问题:responseXML 将从 html 代码剪辑的元素文本传递到末尾。
以下是相关代码:
PHP 发送 XML:
header( 'Content-type: text/xml' );
echo '<?xml version="1.0" encoding="UTF-8" ?>';
echo "<posts>";
echo "<textblock>Block with html<br />Next line in block</textblock>";
echo "<inputline>input line</inputline>";
echo "</posts>";
根据 Firebug 的完整 XML 响应(注意所有数据都在那里)
<?xml version="1.0" encoding="UTF-8" ?><posts><textblock>Block with html<br />
Next line in block</textblock><inputline>input line</inputline></posts>
回到浏览器接收到的 JS 变量得到“使用 html 阻止”,仅此而已。 HttpPostExch是 XMLHttpRequest
var received =
HttpPostExch.responseXML.getElementsByTagName("textblock")[0].firstChild.data;
下一个元素 inputline 可以正常使用。上面是FF16,IE8也是这样。所以我应该做错事将HTML
代码包含在XML
.
有什么想法为什么当 html 存在时代码会这样做?