gpt4 book ai didi

javascript - 完成所有ajax查询后执行一个函数

转载 作者:行者123 更新时间:2023-11-30 00:30:30 25 4
gpt4 key购买 nike

在我的代码中,我必须进行多次 ajax 调用,然后在所有完成后调用更新函数。我尝试使用 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 完成后调用一个函数(即使根本没有查询)?

谢谢

最佳答案

将返回的 promises 添加到数组中,然后使用 $.when 确定它们何时全部完成

var xhr = [];

for (var key in data) {
if (...) {
var request = $.ajax({ ... });

xhr.push(request);
}
}

$.when.apply($, xhr).done(updateAll);

关于javascript - 完成所有ajax查询后执行一个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29751481/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com