У меня есть следующие функции:Jquery Ajax внутри .each Как вызвать функцию, когда вся .each завершена
$.each(friends, function(friend, data) {
var group = "Chat";
$.ajax({'type':'GET', 'url':'/site/getgroup?username=' + friend,
'success':function(callback){
group = callback;
self.addFriend(friend, data.status, group);
}, //ajax success
}); //ajax
});
После этих кодов, у меня есть некоторые коды для инициализации chatBar с использованием данных из них. каждый и .ajax. Однако сейчас, поскольку Ajax является асинхронным, он становится очень глючным. Как я могу узнать, что эти .each все закончили с возвращенным значением ajax без установки ajax async в false? (Означает, что эта часть полностью закончена).
Как есть способ, которым я могу использовать .promise, .complete или XHRs, чтобы знать всю. Вся вещь завершена? Я пробовал много вещей, но они, похоже, не работают для меня.
Спасибо,
Я хотел бы подойти, что по-другому, сделав только один запрос Ajax и Переберите результатов обратного вызова. Хотя это решение может потребовать некоторого рефакторинга 'getgroup'. – Mina