2

Web サイトに一連の jQuery AJAX 呼び出しを実装することを計画しており、AJAX 呼び出しを中止する関数を開発したいと考えています。これどうやってするの?このリンクは既に読みましたが、うまくいきません。

4

2 に答える 2

7

ajax リクエストを変数に割り当てる必要があります。

var xhr = $.ajax({
***
});

それから電話するabort()

xhr.abort();
于 2013-05-30T13:23:28.010 に答える
0

AJAX を 1 回使用するだけなら簡単です。XMLHttpRequest には、リクエストをキャンセルする abort メソッドがあります。

// creating our request
xhr = $.ajax({
url: 'ajax/progress.ftl',
success: function(data) {
//do something
}
});

// aborting the request
xhr.abort();

xhr オブジェクトには、リクエストの状態 (UNSENT - 0、OPENED - 1、HEADERS_RECEIVED - 2、LOADING - 3、および DONE - 4) を含む readystate も含まれます。したがって、これを使用して、前のリクエストが完了したかどうかを確認できます。

// abort function with check readystate
function abortAjax(xhr) {
if(xhr && xhr.readystate != 4){
xhr.abort();
}
}

// this function usage
abortAjax(xhr);
于 2013-05-30T13:37:09.520 に答える