jQuery的:樣式所有空兒達陣只有當第(:第一)TD不包含文本(:空)
我需要一些jQuery代碼到樣式的所有空兒TDS只有當第一個TD不包含文本。
現在我的代碼將所有空的TD樣式設置爲灰色(請參見圖片)。
我只想要第一行的樣式,因爲第一個TD包含文本。換句話說,我需要測試第一個TD是否包含文本,如果是,請在該行上添加淺灰色,如果爲空,則不要將着色添加到空TD。
jsbin上面的代碼:
http://jsbin.com/ojemuf/1/edit
jQuery的:樣式所有空兒達陣只有當第(:第一)TD不包含文本(:空)
我需要一些jQuery代碼到樣式的所有空兒TDS只有當第一個TD不包含文本。
現在我的代碼將所有空的TD樣式設置爲灰色(請參見圖片)。
我只想要第一行的樣式,因爲第一個TD包含文本。換句話說,我需要測試第一個TD是否包含文本,如果是,請在該行上添加淺灰色,如果爲空,則不要將着色添加到空TD。
jsbin上面的代碼:
http://jsbin.com/ojemuf/1/edit
我希望我理解你的問題的權利
環槽的TR元素,並在第一個非空添加顏色到空TD的tr元素
$('tr').each(function() {
if(!$(this).find('td').first().is(':empty'))
$(this).find('td:empty').css('background', '#ccc');
});
---編輯內 - - 是否要更新整個表時,第一個元素是不是空Mathletics
$('tr td:first-child').not(':empty').siblings("td[class*='_crew']:empty").css("background", "#DDCEC0");
完美!謝謝:) – user1040259
也許第二個選項更清潔,基於Mathletics – TheAnchorsmith
的答案我敢肯定,有一個奇怪的邊緣情況下,但一般來說,從不使用'each'進行選擇。 (無論如何,我向你拋出了一個贊成票。) – Mathletics
選擇行,檢查是否第一個孩子不是空的,讓與其相配套的兄弟姐妹:
$('TR TD: ('td [class * ='_ crew']:empty「)。css(」background「,」#DDCEC0「);
$('tr td:first-child:not(:empty)').siblings("td[class*='_crew']:empty").css("background", "#DDCEC0");
顯然我讓它倒退了!
不錯!它可以顛倒嗎?如果第一個TD中有文字,我想要添加顏色。 – user1040259
'$('tr td:first-child:not(:empty)')'或'$('tr td:first-child')。not(':empty')';我忘了,如果選擇器在嵌套時玩的很好。 – Mathletics
這隻能在同一行獲得直接兄弟姐妹。這是意圖還是應該爲整個桌子着色? @ rick-ootes – B2K
問題的 反向版本是有點不清楚,或者如果要更新所有匹配的行。對於整個表,你可以試試這個:
$("td:first:not(:empty)")
.closest("table")
.find("td[class*='_crew']:empty")
.css("background", "#DDCEC0");
從描述,似乎其他的答案錯過了,他希望這個應用時,第一個元素是不是空的事實。
第一句和第三句是矛盾的。你可以編輯帖子澄清。 – B2K