多个ajax的顺序,JQuery - 强制多个ajax请求按顺序运行

以下按顺序使用jQuery执行每个ajax调用。通话必须按顺序进行。我发现这个工作的唯一方法是使用异步:false,我知道这是弃用的,不应该使用。下面的代码遍历[name]数组中的每个元素并按顺序触发每个ajax请求。当我删除async:false时,ajax调用会失序,有时其中一个似乎根本不会触发。我认为ajaxComplete可能会帮助我,但我没有运气。有没有办法让这些Ajax调用顺序触发?JQuery - 强制多个ajax请求按顺序运行

function doGetJson(name1) {

var URL = 'http://some url/?name=' + name1;

$.ajax({

url : URL,

dataType : 'jsonp',

async: false,

jsonpCallback : 'getJson',

name: name1,

index: i,

success : handleJson

});

};

function handleJson(data) {

};

var name = "test1,test2,test3".split(",");

for (var i = 0; i < name.length ; i++)

{

doGetJson(name[i]);

}

+0

是否有你需要按顺序Ajax调用理由吗? –

+0

每个ajax调用的结果都是一个地图图层,它必须以特定顺序添加到地图中。 –

你可能感兴趣的:(多个ajax的顺序)