可能重复:
等到所有 jquery ajax 请求完成?
each() 函数中的多个 ajax 调用.. 然后在所有这些都完成后执行一些操作?
下面的函数在文档准备好时运行所有这些代码,但是当来自这些的所有数据完成时,我正在尝试运行其他函数。
function loadZonesDistrictsStoresData(){
$.getJSON('/CampaignMgmt/GetZonesByClient', { 'clientid': clientid }, function (zones){
$.each(zones, function(index, zoneid){
var li_tag = '<li id="'+ zoneid +'"> <label><input id="'+zoneid+'" data-id="'+zoneid+'" onchange="zones.selectZone(this.value)" type="checkbox" name="zone_'+zoneid+'" value="'+ zoneid +'"><span>' + zoneid +'</span> </label></li>';
$("ul.zones").append(li_tag);
$.getJSON('/CampaignMgmt/GetDistrictsByZone', {'clientid': clientid, 'zone': zoneid }, function(data){
zone_object[zoneid] = data;
$.each(data, function(index, districtid){
$.getJSON('/CampaignMgmt/GetStoresByDistrict', {'clientid': clientid, 'district': districtid }, function(stores){
districts_object[districtid] = stores;
});
});
});
});
});
}