gpt4 book ai didi

javascript - 如何检查each()迭代以promise()结束

转载 作者:行者123 更新时间:2023-12-03 12:16:42 25 4
gpt4 key购买 nike

我有一些来自某些 jquery post 操作的数据响应的每次迭代。我的问题是如何检查此迭代是否结束?

$.each(data, function(key, value){
//
}).promise().done(function(){
setTimeout(function(){
submitBtn.removeClass('buttonInProgress');
}, time);
});

这是我的代码,有什么问题吗?我遇到错误未定义不是函数

最佳答案

如果您在 .each 回调中执行一些异步操作,则由您构建一组 promise ,并且使用 $.when 等待它们全部解析。您还可以手动解决 .each 回调中创建的每个 Promise。

该过程将如下所示:

var promises = [];

$.each(data, function () {
var dfd = $.Deferred();

doSomethingAsync({success: function () { dfd.resolve() });

promises.push(dfd);
});

$.when.apply($, promises).then(function () {
setTimeout(function(){
submitBtn.removeClass('buttonInProgress');
}, time);
});

关于javascript - 如何检查each()迭代以promise()结束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24658787/

25 4 0
文章推荐: javascript - 从 URL 问题获取模型
文章推荐: Mac 上的 JavaScript XDate 无法识别本地时区
文章推荐: javascript - 使用键盘时从