我必须在一个循环中发出一系列 Ajax 请求。其中大约100个。每个请求都返回一个 JSONP 变量。我从 JSON 中提取数据并继续将值附加到 div 中。问题是我希望 div 按函数调用的顺序附加数据。即顺序。现在,每次刷新页面时,我都会根据请求完成的顺序获得不同的顺序。这是我的代码。
$.each(elem, function (index, item) {
$.ajax({
type: 'post' ,
url: moviesSearchUrl + '&q=' + encodeURI(item) + '&page_limit=1',
dataType: "jsonp",
async: false,
success: searchCallback
});
function searchCallback(data) {
var movies = data.movies;
var markup = index + ': '+ movies[0].title + '<img class=" bord" src="' + movies[0].posters.thumbnail + '" /><br/>';
$("div.content").append(markup);
}
});
});
当我在 div 内显示索引的值时,每次我得到随机订单。2 4 3 1 7 有时和 1 5 2 7 4 有时。我什至尝试 async: false 。那没有帮助。我在某处读到 JSONP 不能用 async: false 完成。请帮帮我。