33
組
除了最後所有元素我有一個表,看起來像:的jQuery選擇每
<table>
<tr>
<td>one</td><td>two</td><td>three</td><td>last</td>
</tr>
<tr>
<td>blue</td><td>red</td><td>green</td><td>last</td>
</tr>
<tr>
<td>Monday</td><td>Tuesday</td><td>Wednesday</td><td>last</td>
</tr>
</table>
我要的是一個jQuery選擇,將選擇所有,但每個錶行的最後td
。我想:
$("tr td:not(:last)").css("background-color","red");
//changing color just as a test...
但不是所有細胞,但最後在各行被改變,所有的細胞,但最後一個在表中選擇。同樣,如果我將其更改爲:
$("tr td:last").css("background-color","red");
唯一發生變化的是最後一個單元格。我如何選擇每行的最後(或最後)?
我不知道這會在我的情況下工作,但也許你能告訴我是肯定的。爲了解決問題,我簡化了html,但每個td都有其他元素,例如輸入和標籤。 「最後一個孩子」是否會尋找後代,還是僅僅是一級孩子? – Anthony 2010-03-08 12:31:51
只是td,因爲在選擇器中沒有空格意味着':'運算符適用於相同的元素,在這種情況下''。因此,只有一級chidren,如果你有一個嵌套td的表,將選擇器改爲'tr> td:not(:last-child)',這將確保只有你所在的任何表/ tr的第一個孩子。 – 2010-03-08 12:41:59
謝謝@尼克!這清除了我寫的一個主要的jQuery功能! – dennismonsewicz 2011-06-17 21:38:48