Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery等待函数结束,然后再次执行 var-repeat=5; 对于(变量i=0;i0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我将更新答案。答案很好。不过,我认为您有一个“按1关闭”的索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我会更新答案。哦,天哪。你真的不想在这里使用I作为全局变量,是吗?是的,I是全局变量。你可以在完成后将其重置为零。我刚刚发布了概念…:)我明白了。但是当你的全局作用域中碰巧有一个for循环时,它会失败得很惨。真的建议我把它作为变量传入的方法哦,天啊。你真的不想在这里使用i作为全局变量吗?是的,我是全局变量。一旦你完成了它,你可以将它重置为零。我刚刚发布了一个概念。。。:)我明白了..但是如果你的全局作用域中碰巧有一个for循环,它会失败得很惨..真的建议我把它作为一个变量传递进去的方法吗?我猜这是一个拼写错误,但以防万一-你在设置数据的那行末尾有一个紧括号;)我不明白为什么loop只会发出两个请求。我猜这是一个输入错误,但以防万一——在设置数据的行尾有一个紧括号;)我不明白为什么loop只会发出两个请求。_Javascript_Jquery - Fatal编程技术网

Javascript jQuery等待函数结束,然后再次执行 var-repeat=5; 对于(变量i=0;i0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我将更新答案。答案很好。不过,我认为您有一个“按1关闭”的索引问题。makeCall(1)将进行两次调用,不是吗?第一次调用,然后1>0,因此它将进行第二次调用。@MikeEdwards:哦,是的。现在的数字表示“在这一次之后执行此操作的次数”。我会更新答案。哦,天哪。你真的不想在这里使用I作为全局变量,是吗?是的,I是全局变量。你可以在完成后将其重置为零。我刚刚发布了概念…:)我明白了。但是当你的全局作用域中碰巧有一个for循环时,它会失败得很惨。真的建议我把它作为变量传入的方法哦,天啊。你真的不想在这里使用i作为全局变量吗?是的,我是全局变量。一旦你完成了它,你可以将它重置为零。我刚刚发布了一个概念。。。:)我明白了..但是如果你的全局作用域中碰巧有一个for循环,它会失败得很惨..真的建议我把它作为一个变量传递进去的方法吗?我猜这是一个拼写错误,但以防万一-你在设置数据的那行末尾有一个紧括号;)我不明白为什么loop只会发出两个请求。我猜这是一个输入错误,但以防万一——在设置数据的行尾有一个紧括号;)我不明白为什么loop只会发出两个请求。

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

所以这个循环将重复2次,同时发出2个请求,所以我的问题是,当第一个循环完成时,如何延迟它…移动到第二个循环


谢谢

您必须从回调的角度来考虑。您有一个任务—进行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只会发出两个请求。