本文展示了如何wait
为动态数量的 ajax 请求完成。他执行以下操作:
var deferredArr = $.map($(".dynaload"), function(el, i) {
return $.ajax({
url: $(el).data("loadUrl"),
success: function(html) {
$(el).html(html);
}
});
});
$.when.apply(this, deferredArr).then(function() {
alert("All Done Loading!");
});
问题是解决延迟的函数需要与延迟一样多的参数。所以,如果我这样做:
$.when.apply(this, deferredArr).then(function(data) {
alert("All Done Loading!");
});
然后data
只是第一个承诺的结果。如何在不求助于将结果附加到数组中的情况下获得所有结果?