2017-07-06 67 views
0

所以我覺得有什麼毛病我的for循環的地方...的Javascript:For循環不工作

我都在一個單獨的css文件中的類,所以我在正確上看到的一切DOM前端。

我的問題是我需要的行1和3將此類,我可以得到它的工作:

<i class="fa fa fa-trophy fa-4" aria-hidden="true"> 

從理論上講,我應該有10行的動態數據表這是我們應用程序中的第一個到第十個用戶。

1-3行:第一,第二和第三位的用戶......因此他們獲得了「獎盃」類。

第4-10行:剩下的用戶是否因此得到「fa-user-circle-o」類。

我在做什麼錯?

的Javascript:

for(var i = 0; i < data.leaderboards.length; i++){ 

     row = $('<div class="leaderboard-row">'); 
     row.append('<div class="user-circle"><i class="fa fa-user-circle-o fa-4" aria-hidden="true">' + '</i></div>'); 
     row.append('<div class="leaderboard-col col1">' + (i + 1) + '</div>'); 
     row.append('<div class="leaderboard-col col2"><span class="truncate">' + data.leaderboards[i].username + '</span></div>'); 
     row.append('<div class="leaderboard-col col3"><span class="truncate">' + data.leaderboards[i].win_amount.formatMoney(0, '.', ',') + '</span></div>'); 

     if(data.leaderboards[i].level_unlocked > _currLevel){ 
      row.append('<div class="leaderboard-col col4">Won Playing ' + data.leaderboards[i].game_name + '</div>'); 
     } 
     else{ 
      row.append('<div class="leaderboard-col col4">Won Playing <a href="/game/' + data.leaderboards[i].game_slug + '">' + data.leaderboards[i].game_name + '</a></div>'); 
     } 
     _table.append(row); 
    } 
+0

請問您可以提供'數據'細節。 – Natsathorn

+0

data.leaderboards是這個數組嗎? –

+0

@Nathathorn我目前沒有準確答案的機器,但「數據」正在擊中後端並從「.leaderboards」數據庫獲取信息。如果有幫助,我們有這個連接的Django。 – spidey677

回答

2

你爲什麼不分配fa-trophy類時i <= 2?像

if (i <= 2) { 
    // assign fa-trophy class for the first 3 places 
    row.append('<div class="user-circle"><i class="fa fa-trophy fa-4" aria-hidden="true">' + '</i></div>'); 
} else { 
    // do something else with 4th place onwards 
    row.append('<div class="user-circle"><i class="fa fa-user-circle-o fa-4" aria-hidden="true">' + '</i></div>'); 
} 
+0

聖潔的廢話!這應該工作!第4-10行會填充正確嗎? – spidey677

+0

是的。這將適用於行4-n,其中'n'是'data.leaderboards.length'。 –

+0

如果我想給第2行一個不同的類名稱呢?那麼從理論上講,任何排在第二位的用戶都會得到一個不同的「i級」銅牌? – spidey677