js ajax 递归,javascript ajax循环请求/ 长轮询终极解决办法——递归
生活随笔
收集整理的這篇文章主要介紹了
js ajax 递归,javascript ajax循环请求/ 长轮询终极解决办法——递归
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
ajax循環(huán)請求,不能使用for循環(huán),原因如下:
1. 因為ajax是異步執(zhí)行,在還沒有拿到服務(wù)器響應(yīng)內(nèi)容,就進入下一個for循環(huán)中
解決辦法:遞歸currentIndex?=?0;
function?ajax(){
if(currentIndex>=20){
return;
}
var?url?=?'url';
console.log(i);
$.ajax({
type:?'get',
url:?url,
dataType:?"json",
async:?true,
cache:?true,
success:?function(json){
currentIndex++;
console.log("test");
ajax();
},
error:?function(data){
console.log("error...");
currentIndex++;
ajax();
}
});
}
注意:
不建議使用ajax使用同步請求,容易造成瀏覽器假死
http://www.oschina.net/code/snippet_574558_13233
總結(jié)
以上是生活随笔為你收集整理的js ajax 递归,javascript ajax循环请求/ 长轮询终极解决办法——递归的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 蜡像多少钱啊?
- 下一篇: 火狐浏览器允许ajax,解决火狐浏览器发