jquery - $.each 使用 Promise 完成后运行 jquery 函数

标签 jquery loops each promise

我有一个提取 foursquare 信息的each 循环。它看起来类似于以下内容:

$.getJSON('https://api.foursquare.com/v2/venues/search?search_string_here',    
 function(data) {
     $.each(data.response.venues, function(i,venues){
          var content = foursquare stuff;
          $(content).appendTo("#fourSquare");
     });
});

我需要在每个循环完成后启动一个函数。如果放在每个循环之后,这将起作用:

$( "#fourSquare" ).promise().done(function() {
    //do stuff
});

我不熟悉promise - 奇怪的是它适用于任何选择器。两个问题:

1) 这是进行 every 回调的最佳方式吗? 2)这里正确的选择器是什么?每个都不会迭代已经存在的元素,所以我不确定要“ promise ”什么

最佳答案

$.getJSON 将返回一个您可以使用的 promise 。这将在回调之后调用。

var $ajax = $.getJSON('url', function(data){
    // your $.each
});

$ajax.done(function(){
    // do stuff
});

关于jquery - $.each 使用 Promise 完成后运行 jquery 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17819083/

相关文章:

javascript - 使用 jquery 将页面上的所有价格从一种货币更改为另一种货币?

C++ 主文件不显示所有内容

jquery - 如何使用 CSS 类使 jQuery 幻灯片打开和关闭

Jquery 幻灯片奇怪的行为

c - 我如何将其变成递减循环?

javascript - Jquery 循环问题

events - slim ,在 :click event inside each block triggers on page load

jquery - 加载和调整大小时在类上执行函数(Jquery)

javascript - 如何正确附加选择的更改

javascript - 将低效代码变成循环? JavaScript