4

次のコードを使用して、競合状態で取得リクエストを抑制します。

        if (currentAjaxRequest !== null) {
            currentAjaxRequest.abort();
        }   
        var query_string = getQuery();
        currentAjaxRequest = $.get(query_string, function(data, textStatus, xhr) {
            if (xhr.status) {  
                currentAjaxRequest = null;
                // do stuff
            }                       
        });

Chrome では、中止が呼び出されるとエラーが javascript コンソールに表示されることに気付きました。

GET 未定義 (未定義)

これはスクリプトにまったく影響を与えないようです - すべてが正常に動作し続けます。これを修正するために私がしなければならないことはありますか?それとも、これはクロムが中止された ajax リクエストを報告する方法ですか?

ご協力いただきありがとうございます

4

1 に答える 1

1

Chrome が中止されたリクエストを報告する方法だと考えるのはおそらく正しいでしょう。jQuery は XMLHttpRequest の abort() メソッドを呼び出します。W3C からのこのメソッドの実装方法に関する推奨事項は、こちらにあります

このプロセスのステップ 6 は「エラー フラグを true に設定する」ため、Chrome は報告するエラーがあると見なしますが、エラー メッセージが要求オブジェクト内に設定されていないため、未定義です。

于 2011-04-06T13:53:28.680 に答える