以下のコードを使用して、複数の URL から JSON を取得しています。ただし、URL の 1 つが失敗したか、404 応答を取得した場合、実行機能は機能しません。私はjquery docを読んで、呼び出しの1つが失敗しても「then」が実行されるべきであることを知っています。
var data = {};
var calls = [];
for (var i in funcs) {
calls.push(
$.getJSON(base_url+i,
(function(i) {
return function(d) {
data[i] = d;
};
}(i))
)
);
}
$.when.apply($,calls).then(function() {
do_something(data);
});