如何选择偶数但未隐藏的所有行?

时间:2011-08-19 10:37:47

标签: jquery

我想要替换行的背景颜色。

我正在尝试选择未隐藏的偶数行的<td>个元素。

我正在尝试以下方法:

$(".results-table tr:not(.hidden-row):even")
    .children("td")
    .css("background-color", "#f1f5f9");

但它不起作用。我想我不能像我一样使用2个选择器。有人可以建议如何正确地做到这一点吗?

3 个答案:

答案 0 :(得分:7)

您可以将filter()用于此目的:

$(".results-table tr:not(.hidden-row)").filter(":even")
    .children("td").css("background-color", "#f1f5f9");

这也会提高性能,因为:even是jQuery扩展,而不是本机CSS选择器。

答案 1 :(得分:4)

您可以使用filter

$(".results-table tr:even").filter(function() { return ! $(this).hasClass('hidden-row'); })
    .children("td")
    .css("background-color", "#f1f5f9");

答案 2 :(得分:1)

尝试

$("results-table tr:not(.hidden-row)").filter(":even")