Javascript jQuery等待函数结束,然后再次执行 var-repeat=5; 对于(变量i=0;i0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我将更新答案。答案很好。不过,我认为您有一个“按1关闭”的索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我会更新答案。哦,天哪。你真的不想在这里使用I作为全局变量,是吗?是的,I是全局变量。你可以在完成后将其重置为零。我刚刚发布了概念…:)我明白了。但是当你的全局作用域中碰巧有一个for循环时,它会失败得很惨。真的建议我把它作为变量传入的方法哦,天啊。你真的不想在这里使用i作为全局变量吗?是的,我是全局变量。一旦你完成了它,你可以将它重置为零。我刚刚发布了一个概念。。。:)我明白了..但是如果你的全局作用域中碰巧有一个for循环,它会失败得很惨..真的建议我把它作为一个变量传递进去的方法吗?我猜这是一个拼写错误,但以防万一-你在设置数据的那行末尾有一个紧括号;)我不明白为什么loop只会发出两个请求。我猜这是一个输入错误,但以防万一——在设置数据的行尾有一个紧括号;)我不明白为什么loop只会发出两个请求。
所以这个循环将重复2次,同时发出2个请求,所以我的问题是,当第一个循环完成时,如何延迟它…移动到第二个循环Javascript jQuery等待函数结束,然后再次执行 var-repeat=5; 对于(变量i=0;i0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我将更新答案。答案很好。不过,我认为您有一个“按1关闭”的索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我会更新答案。哦,天哪。你真的不想在这里使用I作为全局变量,是吗?是的,I是全局变量。你可以在完成后将其重置为零。我刚刚发布了概念…:)我明白了。但是当你的全局作用域中碰巧有一个for循环时,它会失败得很惨。真的建议我把它作为变量传入的方法哦,天啊。你真的不想在这里使用i作为全局变量吗?是的,我是全局变量。一旦你完成了它,你可以将它重置为零。我刚刚发布了一个概念。。。:)我明白了..但是如果你的全局作用域中碰巧有一个for循环,它会失败得很惨..真的建议我把它作为一个变量传递进去的方法吗?我猜这是一个拼写错误,但以防万一-你在设置数据的那行末尾有一个紧括号;)我不明白为什么loop只会发出两个请求。我猜这是一个输入错误,但以防万一——在设置数据的行尾有一个紧括号;)我不明白为什么loop只会发出两个请求。,javascript,jquery,Javascript,Jquery,所以这个循环将重复2次,同时发出2个请求,所以我的问题是,当第一个循环完成时,如何延迟它…移动到第二个循环 谢谢您必须从回调的角度来考虑。您有一个任务—进行AJAX调用—您希望在AJAX调用完成后再次执行该任务。将任务放入函数中,然后从AJAX调用的success回调调用该函数。要跟踪重复次数,请将其作为显式变量传递到函数中: var repeat = 5; for (var i = 0; i < repeat.length; ++i) { $.ajax({ ty
谢谢您必须从回调的角度来考虑。您有一个任务—进行AJAX调用—您希望在AJAX调用完成后再次执行该任务。将任务放入函数中,然后从AJAX调用的
success
回调调用该函数。要跟踪重复次数,请将其作为显式变量传递到函数中:
var repeat = 5;
for (var i = 0; i < repeat.length; ++i)
{
$.ajax({
type: 'POST',
headers: { "cache-control": "no-cache" },
url: baseUri + '?rand=' + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: 'something_to_post=1234'),
success: function(jsonData,textStatus,jqXHR)
{
//some functions
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//some alert code
}
});
}
函数makeCalls(numCalls){
如果(numCalls你必须从回调的角度来考虑。你有一个任务——进行一个AJAX调用——你想在AJAX调用完成后再做一次。将该任务放入一个函数中,然后从AJAX调用的success
回调调用该函数。要跟踪重复次数,请将其作为显式函数传递到函数中变量:
var repeat = 5;
for (var i = 0; i < repeat.length; ++i)
{
$.ajax({
type: 'POST',
headers: { "cache-control": "no-cache" },
url: baseUri + '?rand=' + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: 'something_to_post=1234'),
success: function(jsonData,textStatus,jqXHR)
{
//some functions
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//some alert code
}
});
}
函数makeCalls(numCalls){
if(numCalls使用递归函数
function makeCalls(numCalls) {
if (numCalls <= 0) {
return;
}
$.ajax({
type: 'POST',
headers: { "cache-control": "no-cache" },
url: baseUri + '?rand=' + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: 'something_to_post=1234'),
success: function(jsonData,textStatus,jqXHR)
{
//some functions
//make the next call
makeCalls(numCalls - 1);
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//some alert code
}
});
}
makeCalls(5);
函数callme(){
如果(i使用递归函数
function makeCalls(numCalls) {
if (numCalls <= 0) {
return;
}
$.ajax({
type: 'POST',
headers: { "cache-control": "no-cache" },
url: baseUri + '?rand=' + new Date().getTime(),
async: true,
cache: false,
dataType : "json",
data: 'something_to_post=1234'),
success: function(jsonData,textStatus,jqXHR)
{
//some functions
//make the next call
makeCalls(numCalls - 1);
},
error: function(XMLHttpRequest, textStatus, errorThrown)
{
//some alert code
}
});
}
makeCalls(5);
函数callme(){
if(我回答得很好。不过,我认为您有一个off by 1索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我将更新答案。答案很好。不过,我认为您有一个“按1关闭”的索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我会更新答案。哦,天哪。你真的不想在这里使用I
作为全局变量,是吗?是的,I是全局变量。你可以在完成后将其重置为零。我刚刚发布了概念…:)我明白了。但是当你的全局作用域中碰巧有一个for循环时,它会失败得很惨。真的建议我把它作为变量传入的方法哦,天啊。你真的不想在这里使用i
作为全局变量吗?是的,我是全局变量。一旦你完成了它,你可以将它重置为零。我刚刚发布了一个概念。。。:)我明白了..但是如果你的全局作用域中碰巧有一个for循环,它会失败得很惨..真的建议我把它作为一个变量传递进去的方法吗?我猜这是一个拼写错误,但以防万一-你在设置数据的那行末尾有一个紧括号;)我不明白为什么loop只会发出两个请求。我猜这是一个输入错误,但以防万一——在设置数据的行尾有一个紧括号;)我不明白为什么loop只会发出两个请求。