2011-07-13 53 views
0

我正在循環瀏覽網格並查看最後一列以查看是否有任何文本。如果有,我想添加CSS背景顏色。我現在所擁有的東西似乎工作一點,但並不完全,因爲即使沒有任何文本,它也會添加背景顏色。有什麼能幫我解決這個問題嗎?jquery循環遍歷行並添加背景顏色

$('.SelectRow').each(function(){ 
      var row = $(this).parents('tr:first'); 
      var lastRow = row.children('td:eq(7)').text(); 
      alert(lastRow); 

      if(lastRow != " ") 
       row.css("background-color", "red");  
     }); 
+1

您所檢查的文本不等於只有一個空間。所以如果你的字符串包含ANYTHING其他的,沒有空格,句點,實際文本,它將評估爲真。這是期望的意圖還是檢查一個空間的錯誤,應該是一個空字符串? –

+0

在選擇器'.SelectRow'的jQuery對象中有什麼? –

回答

1

使用此:

$('.SelectRow').each(function(){ 
      var row = $(this).parents('tr:first'); 
      var lastRow = row.children('td:eq(7)').text(); 
      alert(lastRow); 

      if($.trim(lastRow) != "") 
       row.css("background-color", "red");  
     }); 
+0

@ Mrchief - 謝謝你,這工作。 – Hmong

+0

Gr8!不要忘記接受一個答案(和upvote)! :) – Mrchief

0

嘗試:

if($.trim(lastRow) != "") 
    row.css('background-color', 'red'); 
1

試試這個(使用:empty選擇):

$('.SelectRow').each(function(){ 
    var row = $(this).parents('tr:first'); 
    if (!row.children('td:eq(7):empty').length) { 
     row.css("background-color", "red"); 
    } 
});