1
ここでは、XHTMLのdiv要素をすべてトラバースしようとしています。http://www.w3.org/私はw3c.htmlにHTMLをコピーし、次のコードを実行しました。 しかし、私のコードが失敗しているため、responseTextは完全ではありません。POST要求は使用されましたが、まだresponseTextは完了していません。なぜですか?
私は最初にGETリクエストを使用しましたが、これが問題だと思っていました(問題だと思いました)が、それでも問題は解決しませんでした。
function traverseHtml()
{
var xmlhttprequest=new XMLHttpRequest();
xmlhttprequest.open('POST','w3c.html',false);
xmlhttprequest.send(null);
var respText=xmlhttprequest.responseText;
alert('The ResponseText is '+respText);
/*var xml=(new DOMParser()).parseFromString(respText,'text/xml');
var result=xml.evaluate('//div',xml,null,XPathResult.ANY_TYPE,null);
var node=result.iterateNext();
alert(node);
while(node)
{
alert(node.childNodes[0].nodeName);
node=result.iterateNext()
}
*/
}
しかし、私は返すように)(it.Shouldn'tためのオープンのためのスクリプトの待ち時間を同期メカニズム(false)を使用しています:あなたはこのように、それが終了したときに呼び出される関数を作成する必要がありますか? – hariom
非同期メカニズムを使用する方がはるかに優れています(特に、ブラウザが終了するまでブラウザをフリーズするのではなく、進捗状況を確認できるため)。 – Andrea
あなたのコードを実行しようとしましたが、responseTextはまだfirefoxで完了していません。さらに、私は200の代わりに0のステータスコードを使用しなければなりませんでした。 https://bugzilla.mozilla.org/show_bug.cgi?id=331610 – hariom