1

私のページは、バックグラウンドでいくつかの HTTP リクエストを送信します。リクエストは、いくつかのユーザー アクションによってトリガーされます。一部のユーザー アクションはリダイレクトを引き起こす可能性があります。ここで問題があります。すべてのリクエストが送信された場合にのみリダイレクトを発生させたいのです。

質問は次のとおりです。すべてのレポートが送信されるのを待ち、その後にのみリダイレクトをトリガーできる、推奨できる Javascript ライブラリはありますか?

4

2 に答える 2

0

を使用すると、すべてのAJAX 呼び出しが完了した (保留中の接続がなくなった)ajaxStopときにトリガーされるイベントを利用できる可能性があります。例を次に示します。

$(document).ajaxStop(allDone);

function allDone() {
    console.info("Now redirecting");
}

$.getJSON('/echo/json/', function() {
    console.info("First done");
    $.getJSON('/echo/json/', function() {
        console.info("Third done");
    });
});
$.getJSON('/echo/json/', function() {
    console.info("Second done");
});

応答の順序に関係なく、allDone()コールバックは常に最後に実行されます。

于 2012-07-08T10:04:09.717 に答える
0

(AJAX)オブジェクトをチェーンできるjQuery Deferredパターンを使用したい

  • すべてが正常に完了した場合、成功のコールバックがあります

  • いずれかのリクエストが失敗した場合の失敗コールバックがあります

http://api.jquery.com/category/deferred-object/

例:

jqueryを使用してajax呼び出しをチェーンする方法

于 2012-07-08T10:11:21.387 に答える