0

私は AJAX の初心者なので、単純な AJAX プログラムを作成する際に多くの問題に直面しています。私がやりたいボタンがあります。それをクリックすると、その下のdivのテキストが変わります。何度も試しましたが、まだバグを見つけることができませんでした。

これが私のコードです:

<html>
  <head>
    <script>
        function loadXMLDoc() {
            var xmlhttp;

            if(!window.XMLHttpRequest) {
                xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
            } else {
                xmlhttp = new XMLHttpRequest();
            }

            xmlhttp.onReadyStateChange = function () {
                if(xmlhttp.readyState==2 && xmlhttp.status==200) {
                    document.getElementById('myDiv').innerHTML = xmlhttp.responseText;
                }
            };

            xmlhttp.open('GET', 'textfile.txt', true);
            xmlhttp.send();
        }
    </script>
  </head>
  <body>
    <button type="button" value="Click!" onClick="loadXMLDoc();">Hello World</button>
    <div id='myDiv'>hello!</div>
  </body>
</html>

そして、ここにテキストファイルがあります:

<p>My name is areeb siddiqui</p>
<p>My name is areeb siddiqui</p>

どんな助けでもいただければ幸いです

前もって感謝します :)

また、ここに私のウェブページがあります: http://mytestingsite.site90.net/ajax/

4

4 に答える 4

1

このブロックを変更します。

if(xmlhttp.readyState==4 && xmlhttp.status==200)
于 2013-02-01T16:37:05.093 に答える
1

これはうまくいくはずです..これが私のajaxリクエストの作成方法です..非常によく似ています

function loadXMLDoc() {
    var xmlhttp = null;

    if(!window.XMLHttpRequest) {
        xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
    } else {
        xmlhttp = new XMLHttpRequest();
    }

    xmlhttp.open('GET', 'textfile.txt', true);
    xmlhttp.send();

    xmlhttp.onreadystatechange = function()
    {
        if(xmlhttp.readyState != 4 || xmlhttp.status != 200){return;}
        document.getElementById('myDiv').innerHTML = xmlhttp.responseText;
    }

}

関数が更新されなかった理由は、onreadystatechangeすべて小文字でなければならないためです

于 2013-02-01T17:03:53.167 に答える
0

準備完了状態の変更をチェック

 xmlhttp.onreadystatechange = function () {
        if(xmlhttp.readyState==4 && xmlhttp.status==200) {
            document.getElementById('myDiv').innerHTML = xmlhttp.responseText;
        }
    };
于 2013-02-01T17:10:51.747 に答える
0

onreadystatechange で onReadyStateChange を変更し、xmlhttp.readyState==2 で xmlhttp.readyState==4 に変更します。

于 2013-02-01T17:11:16.303 に答える