4

我正在使用这个:

jQuery("tr:odd").css("background-color", "#f5f5f5");
jQuery("tr:even").css("background-color", "#ececec");

只需简单地为交替的表格行添加背景颜色,效果很好。问题在于,如果同一页面中有多个表,它只会不断迭代每个表,而不是为每个表重置并重新开始。我的th背景颜色与我的偶数行颜色相同所以最终它赶上了,我有一个thtr它是相同的颜色,所以它看起来像一个大行。

如何使用这两行 jquery,但如果有多个表,则为页面上的每个表重新开始?

4

3 回答 3

11

首先选择表,然后查找子行:

jQuery("table").find("tr:odd").css("background-color","#f5f5f5");

http://jsfiddle.net/mblase75/xgQ8Q/

Vega 的答案使用相同的方法,但字符更少。

于 2013-05-29T19:03:17.663 回答
4

尝试table在如下上下文中使用,

jQuery("tr:odd", 'table').css("background-color", "#f5f5f5");
jQuery("tr:even", 'table').css("background-color", "#ececec");
于 2013-05-29T19:03:57.957 回答
1
jQuery("table tr:nth-child(odd)").css("background-color", "red");
jQuery("table tr:nth-child(even)").css("background-color", "yellow");

http://jsfiddle.net/xgQ8Q/5/

于 2013-05-29T19:27:15.330 回答