我是XMLHttpRequest
的新手,但已成功更新服務器的時鐘,並使用它與GET
。responseXML剪輯XML數據發送
現在我需要發送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>";
完整的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存在時會這樣做?
很抱歉,沒有,HttpPostExch.responseXML.getElementsByTagName( 「正文塊」)[0]。數據不限定用於_received_變量的任何值(I檢查了它)。不管怎樣,謝謝你。 – RickTrelles
@RickTrelles嘗試此:'接收VAR =(新的XMLSerializer())serializeToString(HttpPostExch.responseXML.getElementsByTagName( 「正文塊」)[0])' –