这是我的代码,setWord是1985:
$("td:contains(" + setWord + ")").css("textDecoration", "underline");
我认为这样可以解决问题:
$("td").not(":contains(" + setWord + ")").parent().css("backgroundColor", "red");
但显然不是。我只是想选择TD的父TR
<tr>
<td>John</td>
<td>03/09/1985</td>
<td>Red</td>
<td>Australia</td>
<td>$ Dollars</td>
</tr>
<tr>
<td>Dave</td>
<td>01/01/1987</td>
<td>Blue</td>
<td>London</td>
<td>£ Pounds</td>
</tr>
答案 0 :(得分:2)
如果想改变所有不包含setWord
“1985”的行的背景,那么试试这个:
$("tr").not(":contains(" + setWord + ")").css("backgroundColor", "red");
如果想要更改做包含setWord
的行的背景,请尝试以下操作:
$("td:contains(" + setWord + ")").parent().css("backgroundColor", "red");
演示:http://jsfiddle.net/kwH6L/1/
您展示的代码存在问题:
$("td").not(":contains(" + setWord + ")").parent().css("backgroundColor", "red");
...首先选择所有 TD元素,然后删除包含setWord
的元素,但仍然在每行中至少选择一些TD元素。那么当你获得所选TD的.parent()
时,你就会获得每个TR元素......