Ajax Queue プラグインの ajaxQueue() や ajaxSync() は、jQuery.ajax() メソッドと同様に扱える
Ajax リクエストをキューに入れて順序を制御する場合、Ajax Queue プラグインが利用されます。
// // jquery-ajax-queue_1.0.js // // レスポンスが返るまで次のリクエストを実行しない(一つずつ順番に処理) jQuery.ajaxQueue({ url: "test.php", success: function(html){ jQuery("ul").append(html); } }); // レスポンスが全て得られるまで各コールバック関数を実行しない(一括処理) jQuery.ajaxSync({ url: "test.php", success: function(html){ jQuery("ul").append("<b>"+html+"</b>"); } });
この Ajax Queue には $.ajaxQueue(options) と $.ajaxSync(options) が定義されており、引数オプションとして $.ajax(options) と同じ type, url, success, error, complete, dataType などのプロパティをもったオブジェクト(辞書)を指定できます。 というのも、これらの関数は最終的に $.ajax(options) を呼び出しているからです。
例えば、success 時に実行される関数の引数として JSON オブジェクトが欲しい場合、dataType: 'jsonp' とします。
// JSON オブジェクト取得例 $.ajaxSync({ url: uri, data: {}, dataType: 'jsonp', success: function(json) { // 挿入処理 } })
dataType を指定しない場合、引数として string オブジェクトが得られるでしょう。
$.ajaxQueue() や $.ajaxSync() は、$.ajax() と互換性があるため、いつでも書き換えることができます。