2016-01-22 93 views
0

所以我有這個PHP foreach -loop從我的數據庫中獲取數據。
我使用$i++來編號相同的div。jQuery添加1與PHP foreach循環

$i=0; 
foreach ($pages as $page){ 
    echo '<div class="class_'.$i++.'"> 
    echo '</div>';   
} 

現在,我有我的頁腳一塊的jQuery的,做一些東西到<div>

<script> 
jQuery(document).ready(function($){ 
    $('.class_1'); 
    $('.class_2'); 
    $('.class_3'); 
}); 
</script> 

因爲我永遠不會知道有多少實例是我想要的jQuery來與foreach加起來-loop但腳本在循環之外,所以它不會加起來。

我真的不知道我的jQuery,所以任何幫助,將不勝感激。

M.

+3

你爲什麼需要這個怎麼做呢?類的全部要點是將元素分組在一起。根據您的需要,最好在所有元素上放一個類,然後在事件處理函數中使用'this'引用來引用引發事件的引用。 –

+0

'class'用於一組元素。你可以給他們一個具有不同ID號碼的班級 – user3284463

+0

我明白你的意思,但每個班級都有自己的功能和自己的CSS。所以它沒有真正結合。它本可以是id的 – Interactive

回答

2
$i=0; 
foreach ($pages as $page){ 
    echo '<div class="class_'.$i++.'">'; 
    echo '</div>';   
} 
echo '<div number-of-divs=' . $i . ' style="display:none;"/>'; 

你的js代碼:

<script> 
jQuery(document).ready(function($){ 
    var number = $('div[number-of-divs]').attr('number-of-divs'); 
    for (i = 1; i <= number; i++) { 
     $('.class_' + i); 
    } 
}); 
</script> 
+0

是的。謝謝! – Interactive

3

你可以得到該類的每個元素,然後用$.each它。

$('[class^="class_"]').each(function() {}); 
0

這樣做的一個好的方法是你應該通過其他類在你的代碼或僅通過這一點,如果上面是唯一的案例。 $('[class^="class_"]').each(function() {});這不會在某些情況下工作,因此使用下面的代碼

$i=0; 
foreach ($pages as $page){ 
    echo '<div class="catch_me class_'.$i++.'"> 
    echo '</div>';   
} 

,並從該腳本

$('.catch_me').each(function(){ 
//You code here 
});