这是我的代码,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>
最佳答案
如果您的想法是更改不包含 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 元素...
关于javascript - 这里如何选择TR?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13022724/