2015-09-28 24 views
-1

爲什麼只有每三分之一當我將i = 0更改爲i = 1但我沒有得到所有結果。jQuery循環每三分之一

$.getJSON('search.php', {q: query, ajax: 'true'}, function(j){ 
    var options = ''; 
    for (var i = 0; i < j.length; i++) { 
     if(i % 3 == 0) { 
      // every third 
     } else { 

     } 
     $("#profile-search-results").html(options); 
    } 
}); 
+3

抱歉......不清楚......你在做什麼......什麼是「j」......你是什麼意思每三分之一......你想要的索引元素'3,6, 9 ...''等 –

+0

嘗試檢查'for(var i = 0; i

+0

我認爲問題是'if'條件滿足第一個元素...這是因爲索引從0開始...... 0%3是0 ....所以你要找的索引是2,5,7 ... 。等 –

回答

1

我想嘗試做的是讓在索引元素3, 6, 9...等,但對第一,第五,第八...等元素被執行的條件。

的問題是你的循環開始0,所以0%3將返回0 ...因爲jQuery中的元素與索引開始0,你需要的是在指數2, 5, 8,...等元素,因此,你應該檢查reminder 3 == 2

for (var i = 0; i < j.length; i++) { 
    if (i % 3 == 2) { 

     // every third 

    } else { 



    } 
0

%modulo運營商。

0 % 3 = 0 
1 % 3 = 1 
2 % 3 = 2 
3 % 3 = 0 
4 % 3 = 1 
5 % 3 = 2 
6 % 3 = 0 
7 % 3 = 1 
... 

所以你有什麼是正常的。