在 jquery 中多次 ajax 调用
Multiple ajax calls in jquery
我正在为我的项目使用 jquery。
我有以下要求:
我需要进行一个调用其他 5 个函数的函数调用。
这 5 个函数是 ajax 个相互独立的调用。 ajax 调用从服务器获取数据并将值附加到全局对象。
我很难确定是否所有 ajax 调用都已完成。完成所有调用后,我必须将其设置为 localStorage,然后加载另一个 html 文件。
最好的方法是什么?
嗯...你可以用 jQuery 加载吗,它确保在你调用任何函数或任何东西之前加载所有内容:
$(document).ready(function() {
//Make sure all DOMs loaded!
}):
如果调用的ajax个数是常量,可以使用下面的逻辑
COUNTER=5;
function reduceCounter(){
COUNTER --;
if(COUNTER == 0)
{
localStorage.Obj=JSON.stringify(Obj);
location.href="nextPage.html";
}
在您的每个 ajax 调用中,在 .always();
处调用 reduceCounter()
例如:
$.ajax({
url: ..
type: 'GET',
dataType: 'json',
})
.done(){...
//set Obj
},
.fail(){...
},.always(){
reduceCounter();
}
我正在为我的项目使用 jquery。
我有以下要求:
我需要进行一个调用其他 5 个函数的函数调用。 这 5 个函数是 ajax 个相互独立的调用。 ajax 调用从服务器获取数据并将值附加到全局对象。
我很难确定是否所有 ajax 调用都已完成。完成所有调用后,我必须将其设置为 localStorage,然后加载另一个 html 文件。
最好的方法是什么?
嗯...你可以用 jQuery 加载吗,它确保在你调用任何函数或任何东西之前加载所有内容:
$(document).ready(function() {
//Make sure all DOMs loaded!
}):
如果调用的ajax个数是常量,可以使用下面的逻辑
COUNTER=5;
function reduceCounter(){
COUNTER --;
if(COUNTER == 0)
{
localStorage.Obj=JSON.stringify(Obj);
location.href="nextPage.html";
}
在您的每个 ajax 调用中,在 .always();
处调用 reduceCounter()例如:
$.ajax({
url: ..
type: 'GET',
dataType: 'json',
})
.done(){...
//set Obj
},
.fail(){...
},.always(){
reduceCounter();
}