私は初めてです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 変数は「Block with html」を取得しますが、他には何もありません。 HttpPostExchは XMLHttpRequest です
var received =
HttpPostExch.responseXML.getElementsByTagName("textblock")[0].firstChild.data;
次の要素、inputline は問題なく使用できます。上記はFF16の場合で、IE8でも同じです。HTML
だから私はコードをに含めるために何か間違ったことをしているはずXML
です。
HTMLが存在するときにコードがそれを行う理由はありますか?