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 サイトの他の関連記事を参照してください。