ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery は実行中の Ajax リクエストを中止できますか?

jQuery は実行中の Ajax リクエストを中止できますか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-26 02:26:14459ブラウズ

Can jQuery Abort In-Flight Ajax Requests?

jQuery を使用した未処理の Ajax リクエストの中止

応答が受信される前に Ajax リクエストをキャンセルすることはできますか?はい、jQuery はこの目的のために簡単なメソッドを提供します。

ほとんどの場合、jQuery の Ajax メソッドは XMLHttpRequest (または同等の) オブジェクトを返し、これは「abort()」メソッドを提供します。これにより、リクエストを途中で終了できます。

コード スニペットに示すように:

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

//kill the request
xhr.abort()

新しい jQuery バージョンでも、このアプローチは引き続き有効です:

1. jQuery 1.5 以降: 返されたオブジェクトは、jqXHR と呼ばれるネイティブ XMLHttpRequest オブジェクトのラッパーになり、引き続き「abort()」メソッドを公開します。

2. jQuery 3 以降: ajax メソッドは、「abort()」などの追加メソッドを含む Promise を返すため、上記のコードは引き続き適用できます。

注: 初期設定にもかかわらず前提として、「xhr.abort()」は jQuery 3.x でも機能し続けます。詳細については、jQuery Github リポジトリを参照してください。

以上がjQuery は実行中の Ajax リクエストを中止できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。