Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/33.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
Jquery 在$内等待AJAX请求,每个请求使用$延迟_Jquery_Ajax_Deferred - Fatal编程技术网

Jquery 在$内等待AJAX请求,每个请求使用$延迟

Jquery 在$内等待AJAX请求,每个请求使用$延迟,jquery,ajax,deferred,Jquery,Ajax,Deferred,我有一个$。每个周期触发一个AJAX请求。 我要做的是等待所有AJAX请求完成。我不在乎这些AJAX请求的结果,问题是我必须确保它们已经完成。 我认为这可以使用$.Deferred实现,但我不知道如何实现,即使在阅读了JQuery文档之后 要等待所有AJAX请求完成,可以将调用返回的jqXHR对象存储在数组中。然后,您可以将该数组应用于$。当所有请求完成时将运行。试试这个: var requests = yourDataStructure.map(function() { return $.

我有一个$。每个周期触发一个AJAX请求。
我要做的是等待所有AJAX请求完成。我不在乎这些AJAX请求的结果,问题是我必须确保它们已经完成。
我认为这可以使用$.Deferred实现,但我不知道如何实现,即使在阅读了JQuery文档之后

要等待所有AJAX请求完成,可以将调用返回的
jqXHR
对象存储在数组中。然后,您可以将该数组应用于
$。当所有请求完成时将运行
。试试这个:

var requests = yourDataStructure.map(function() {
  return $.ajax({
    // setup...
  });
});

$.when.apply($, requests).done(function() {
  console.log('All requests finished, do something here...');
});
我曾经在堆栈溢出上找到这个答案,如果我能找到链接,我会把链接放在下面


注:不要给我投票,我只是想帮你&我只是从堆栈溢出的某个地方引用了这个。当我找到它时,我会放上链接:)

这不是我想要的,因为我有一个foreach循环,我不知道需要多少requestX()函数。
$.when(request1(), request2(), ... ,requestn()).done(function(res1, res2, ... , resn){
    // what to do when I get all the response / when it finished
});