jquery每个循环与ajax不同的结果

时间:2014-06-20 09:54:50

标签: jquery

 $('.body').find('.entry').each(function () {
console.log('div found');
var that = $(this);
$.get('recommends').done(function(html) {
    that.append(html);
    console.log('appended');
});
});

在我的Chrome控制台

  

(2)div发现

     

(2)追加

我希望结果如下,有什么帮助吗?

  

div找到了

     

所附

     

div找到了

     

所附

1 个答案:

答案 0 :(得分:0)

我认为chrome group的消息试图为maessages添加索引号 - 但这不是主要原因

    var i= 0;
 $('.body').find('.entry').each(function () {
console.log('div found'+window.i);
var that = $(this);
$.get('recommends').done(function(html) {
    that.append(html);
    console.log('appended'+window.i);
});
});

另外,可能是因为ajax如何工作它的异步, 循环只要求get调用启动,而完成回调函数在收到ajax数据时执行

例如,你有两个孩子,你告诉他们每个人都抓我一个橘子 你告诉孩子一个孩子两个,这就是foreach所做的 当每个孩子完成它时,你会说这是你完成的回调做的橙色

foreach无法完成其工作