0
我正在開發一個需要以順序方式處理ajax調用的項目。我的代碼是一樣的東西:順序執行js
for(var j=0; j<3;j++) {
$.ajax({
url:url[j],
async:false
}).done(function(result){
var data = result.data;
for(var i=0; i < data.length;i++){
analyses += "<div><div id=\"" + data[i] + "\" class=\"module\">";
analyses += "<br/>Analysis : " + data[i] + "<br/>";
analyses += "</div></div>";
$("#analysesPlaceHolder").html(analyses);
}
});
}
然而,現在它只是隨機選擇列表中的網址(有時是第一次,有時則不然)。如何使執行順序,以便代碼首先執行第一個Ajax調用,然後第二個等。
因爲你指定'async:false',你的'$ .ajax'調用是同步的,而且你正在從一個'array'中取得你正在循環的url ......可能這個'random'問題是在你創建'url'數組的地方。 – albciff 2015-02-06 11:37:07
也許'$ .when'就是你想要的......看看這裏http://api.jquery.com/jQuery.when/ – 2015-02-06 11:48:02