0

XMLHttpRequest()ASP.NETMVCアプリケーションでJavaScriptオブジェクトを使用してテストしようとしています。私はビューに入れた次のテストコードを書きました-

<script type="text/javascript">
var request;

function getAJAX() {
    request = new XMLHttpRequest();
    request.open("GET", "test.txt");
    request.onreadystatechange = checkData();
    request.send(null);
}


function checkData() {
    if (request.readyState == 4) { 
        if (request.status == 200) { 
            alert(request.responseText);                
        }
    }
}
</script>

<form action="">
    <p>
        <button type="button" onclick="getAJAX()">DO IT!</button>
    </p>
</form> 

「DOIT!」をクリックすると ボタンをクリックすると、スクリプト関数が呼び出されますが、"request.onreadystatechange"変更されることはありません。これについていくつか質問があります-

  1. request.open()通話で何が起こっているかを追跡する簡単な方法はありますか?
  2. XMLHttpRequest()オブジェクトはASP.NETMVCアプリケーションでも機能しますか ?
  3. これを機能させるには、Global.asaxファイルに変更(またはその他の変更)を加える必要がありますか?
  4. ディレクトリ(Global.asaxファイルと同じ場所)に、request.open呼び出しが表示される場所がありますか"test.txt""base"

:私はjQueryなしでこれを行おうとしています)

どうもありがとう!

4

1 に答える 1

1

の実行結果onreadystatechangeにコールバックを設定しています。代わりにequal を設定すると、準備完了です。checkDataonreadystatechangecheckData

function getAJAX() {
    request = new XMLHttpRequest();
    request.open("GET", "test.txt");
    request.onreadystatechange = checkData; // Don't execute checkData
    request.send(null);
}

他の質問について:

request.open() 呼び出しで何が起こっているかを追跡する簡単な方法はありますか?

Firebug または選択した開発ツールを使用して、AJAX 要求を検査します。

XMLHttpRequest() オブジェクトは ASP.NET MVC アプリケーションでも機能しますか?

はい、うまくいきます。

これを機能させるには、Global.asax ファイルに変更 (またはその他の変更) を加える必要がありますか?

私が知っているわけではありません。

"base" ディレクトリ (Global.asax ファイルと同じ場所) に "test.txt" があります。

多分?実際には、ルーティング ルールと IIS の構成方法によって異なります。

于 2013-01-12T16:06:26.390 に答える