2014-03-24 105 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); 
      }); 
     } 
    }); 
});