2014-03-24 59 views
0

我试图刷新谷歌广告,这是一个div内。我为所有这些div添加了一个名为'adslot'的通用css类。阿贾克斯很少有div。但在文档准备好的时候,当我通过jQuery调用每个函数调用所有这些div时,它仅适用于那些在ajax调用之前加载的div。 例如,如果给可用的 '.adslot' 的数目,即jquery'each'不适用于ajax加载dom

alert($('.adslot').length); 

输出:5,这是正确的。 3个在ajax调用之前生成的div,以及2个在ajax调用之后生成的div。

同时这一点,如果我写的 -

$('.adslot').each(function() { 
    var id = $(this).attr('id'); 
    alert(id); 
}); 

我只得到1日3 div的ID,这是AJAX调用之前生成的警报。

有没有办法读jQuery的所有5个div ID?

+2

包裹在阿贾克斯成功的代码。一切都应该落实,然后 –

+0

您可以使用this.id而不是$(this).attr('id')'。 –

+0

或将代码放入函数中,并在$(document).ready()中调用一次,并在您的ajax成功中调用一次。 –

回答

1

尝试在success callback代码像

$(function(){ 
    $.ajax({ 
     url:...., 
     data:..., 
     success:function(data){ 
      $('.adslot').each(function() { 
       var id = this.id; 
       alert(id); 
      }); 
     } 
    }); 
});