JavaScript ajax 调用 for 循环并维护响应顺序
JavaScript ajax call with for loop and maintain the order of response also
for (var i = 0; i < 5; i++) {
(function(val) {
$.get('http://x.com/androidapi/clou.php?value=' + val, function(data) {
console.log(data)
})
})(i)
}
如果传递的值为 2,我将我的 API 响应设置为延迟 10 秒,因此 2 的响应来得很晚。是否有任何方法可以在不实际同步 ajax 调用的情况下同步调用?API 只是回显值,我得到的响应是随机的,最后为 2。我的愿望目标是实现0 1 2 3 4
输出。
你可以
用$.when((和$来做到这一点。延迟((:
var deferreds = [];
for (var i = 0; i < 5; i++) {
(function(val) {
var dfd = $.Deferred();
$.get('http://x.com/androidapi/clou.php?value=' + val, function(data) {
dfd.resolve(data);
}));
deferreds.push(dfd);
})(i)
}
$.when.apply(null, deferreds).done(function(){ console.log.apply(console, arguments)});
小提琴:https://jsfiddle.net/caeth/kqp294Lc/
相关文章:
- 如何将getJson的响应保存在全局变量中
- 如何使用Spring MVC将Facebook返回的响应数据保存在Java类中
- 使用angularjs向浏览器发送servlet响应(下载功能)
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 不再使用innerHTML进行AJAX响应.(代码未得到响应)
- 为什么可以't我使用了AJAX响应的一部分
- 响应动画手风琴不工作
- 如何从SeleniumWebdriver获取异步Javascript响应
- Ajax调用在Firefox中不会自动响应
- 可以在响应时隐藏iphone上的“播放”按钮以进行视频播放
- 由于响应中不存在“Access Control Allow Origin”标头,跨域请求停止工作
- 如何在 JavaScript 和 HTML 中更改对输入框的提示响应
- 如何创建更好的方式来维护基于我的代码访问的最后一个页面
- IIS动态HTTP响应标头
- 预期响应包含一个对象,但在angular js中得到一个数组错误
- Ajax响应转换
- 使Intro.js工具提示响应
- 存储$http如何从$http函数(Angularjs)外部获取可访问变量中的响应
- 将高图饼图中的文本居中显示为响应
- JavaScript ajax 调用 for 循环并维护响应顺序