多个AJAX请求是否按照创建的顺序执行?
Will multiple AJAX requests execute in the order they were created?
总之,问题是:
jQuery.ajax({
url: some_url,
success: function(){
alert('success1');
},
error: function(){
alert('error1');
}
});
jQuery.ajax({
url: some_url,
success: function(){
alert('success2');
},
error: function(){
alert('error2');
}
});
jQuery.ajax({
url: some_url,
success: function(){
alert('success3');
},
error: function(){
alert('error3');
}
});
这些总是会导致:
alert('success1');
alert('success2');
alert('success3');
或者输出如下:
alert('success2');
alert('success3');
alert('success1');
如果我想最后一个输出只显示给用户,我不应该在以前的AJAX请求上运行abort()
吗?我的意思是,我不介意他们看到success1
和success2
的消息,只要success3
将永远是最后一个。
尝试阅读JavaScript Promises/A+(即这里http://www.html5rocks.com/en/tutorials/es6/promises/)这可能会有帮助。它允许做史密斯。就像doSmthAsync().then(doSmthAsyncElse()).then(...)
等
另外,jQuery的差异可以帮助您。http://api.jquery.com/jquery.deferred/
相关文章:
- 使用appendChild()动态添加的脚本是按顺序执行还是并行执行
- 如何在angularjs中按顺序执行多数据ng应用程序
- 要按顺序执行的异步代码
- AngularJS:如何按照预定义的顺序执行函数
- 按顺序执行导入的 Javascript 函数
- 无法让 jQuery 以正确的顺序执行代码
- 触发后的 Javascript 顺序执行
- $http.post() angularjs 响应函数未按正确的顺序执行
- 如何按顺序执行 jQuery 函数
- 为什么Javascript不按顺序执行代码
- 对象在循环中运行时未定义,但在按顺序执行时未定义
- 按顺序执行ajax请求的动态编号
- javascript在网络上的顺序执行
- SQL语句是通过PhoneGap'按顺序执行的吗;的Web SQL数据库
- jQuery Deferred和Promise用于同步和异步函数的顺序执行
- 顺序执行js
- 如何按顺序执行承诺数组
- 有没有更好的方法以一定的顺序执行一堆部分异步的jQuery函数
- 如何确保 Dojo 模块按特定顺序执行
- 为什么我的 JavaScript 不能按顺序执行