Javascript 完成所有ajax查询后执行函数
在我的代码中,我必须完成几个ajax调用,然后在所有操作完成后调用一个更新函数。我尝试使用Javascript 完成所有ajax查询后执行函数,javascript,jquery,ajax,Javascript,Jquery,Ajax,在我的代码中,我必须完成几个ajax调用,然后在所有操作完成后调用一个更新函数。我尝试使用ajaxStop,但问题是,如果循环没有进行任何ajax调用,则该方法不会被调用 看起来是这样的: for (var key in data) { if (...) { $.ajax({ ... }); } } $(document).ajaxStop(function () { updateAll(); // I need to call this function even if
ajaxStop
,但问题是,如果循环没有进行任何ajax调用,则该方法不会被调用
看起来是这样的:
for (var key in data) {
if (...) {
$.ajax({ ... });
}
}
$(document).ajaxStop(function () {
updateAll(); // I need to call this function even if there was no ajax call
});
有人知道在完成上一个循环中的所有ajax之后如何调用函数(即使根本没有查询)
谢谢将返回的承诺添加到数组中,然后使用
$。当
确定它们何时全部完成
var xhr = [];
for (var key in data) {
if (...) {
var request = $.ajax({ ... });
xhr.push(request);
}
}
$.when.apply($, xhr).done(updateAll);