1

[AJAX ...]を更新せずにページをリロードしようとしましたが、機能していないようです:/

function refresh() {
   link = document.location;
   xmlhttp=new XMLHttpRequest();
   xmlhttp.onreadystatechange=function() {
      if (xmlhttp.readyState==4 && xmlhttp.status==200) {
         document.getElementsByTagName('table').innerHTML=xmlHttp.responseText;
      }
   }
   xmlhttp.open("GET",link,true);
   xmlhttp.send();
}

誰が何が悪いのか知っていますか?

4

1 に答える 1

0

innerHTML は使用しないでください。これは、DOM を適切に登録しない独自の Microsoft Jscript メソッドです。たとえば、それを使用して ID を持つ要素をインポートする場合、女王の頭に王冠を置くこととはあまり似ておらず、橋で体を投げ捨てることに似ています。AJAX で importantNode を使用することに固執すると、AJAX で読み込まれたコンテンツが確実に機能します。また、コードはテキストではありません。responseText は使用せず、responseXML を使用してください。次に、同じコンテンツを再リクエストする代わりに、コンテンツが過去 X 秒以内に更新されていると予想される場合を除き、DOM に既にあるレイヤーを単純に非表示に戻すことができます。その場合、要素を削除してやり直すことができます。 AJAX リクエスト。視覚的なデモンストレーションについては、私のビデオを参照してください...

http://www.youtube.com/watch?v=-iVebYrrz9U

于 2012-07-02T11:01:17.263 に答える