私のスクリプトはいくつかのajaxリクエストを処理する必要があります。簡略化したバージョンは次のとおりです。
function request(variable){
$.ajax({
// call config
}).done(function(data){
// treatment of returned data
// returning TRUE (ok) or FALSE (errors)
}).fail(function(e){
// generating error message
});
}
私はいくつかの電話をかける必要があります:
request(variableA);
request(variableB);
request(variableC);
リクエストは同時に実行され、うまく機能しますが、プロセスがいつ終了するかはわかりません。また、戻り値を表示できません。
いくつかの議論はwhen()を使用することを提案しています。
$.when(request(variableA), request(variableB), request(variableC))
.done(function(resultA, resultB, resultC) {
alert("Finished!");
//results available
});
このコードを使用すると、アラートは完了を待つのではなく、プロセスの最初に実行されるようです...
私の最善の選択肢は何でしょうか?