1

メソッドを呼び出して$.ajax()XMLHttpRequest を変数に格納する場合、vXMLHttpRequest呼び出す前に以前の XMLHttpRequest の存在を確認する正しい方法は何abortですか?

var vXMLHttpRequest = $.ajax({
    type: "POST",
    url: "some.php",
    data: "name=John&location=Boston",
    success: function(msg){
       alert( "Data Saved: " + msg );
    }
});

これは、アクティブな以前の XMLHttpRequest がある場合にのみリクエストを強制終了する方法であると想定しています

if(vXMLHttpRequest)
{
  vXMLHttpRequest.abort();
}

そうですか、それともより良い構文がありますか? 例えば:

if(vXMLHttpRequest!=null)
{
  vXMLHttpRequest.abort();
}
4

2 に答える 2

1

最初のものは機能しますが、リクエストの readyState プロパティを確認することもできます: 4 の場合、リクエストは既に完了しているため、中止する必要はありません。

于 2010-12-21T16:48:53.417 に答える
1

あなたの権利これは有効です

if(vXMLHttpRequest)
{
  vXMLHttpRequest.abort();
}
于 2010-12-21T16:49:25.360 に答える