Jquery 多表行分条

Jquery 多表行分条,jquery,html-table,Jquery,Html Table,我在同一个文档中有多个表,希望从每个表的第一个tbody行开始添加行颜色 我有以下代码 $('table tbody tr').filter(':even').not('.spacer, .hidden, thead tr, tfoot tr').addClass('even'); 然而,它并没有完全按照我所希望的那样工作。有人能帮我处理上面的代码吗?这样我就可以确保行高亮显示从每个表的第一个tbody行开始,而不管页面上出现多少个表?您是否在这里查看:(来自jQuery文档) 无论如何,请尝

我在同一个文档中有多个表,希望从每个表的第一个tbody行开始添加行颜色

我有以下代码

$('table tbody tr').filter(':even').not('.spacer, .hidden, thead tr, tfoot tr').addClass('even');

然而,它并没有完全按照我所希望的那样工作。有人能帮我处理上面的代码吗?这样我就可以确保行高亮显示从每个表的第一个tbody行开始,而不管页面上出现多少个表?

您是否在这里查看:(来自jQuery文档)

无论如何,请尝试此代码,它可以工作:

<script src="jquery.js"></script>
<script type="text/javascript">
    $(document).ready(function(){
        $("table tr").mouseover(function(){$(this).addClass("over");}).mouseout(function(){$(this).removeClass("over");});
        $("table tr:even").addClass("alt");
    });
</script>

$(文档).ready(函数(){
$(“table tr”).mouseover(function(){$(this).addClass(“over”);}).mouseout(function(){$(this).removeClass(“over”);});
$(“表tr:偶数”).addClass(“alt”);
});

据我所知,此选择器适用于您:

$('table tbody tr:first-child').addClass('even');
编辑 如果希望从第一行开始,每隔一行添加一条条纹,则需要这样做:

// ... and adding the .even class to :odd rows is just weird.
$('table tbody tr:nth-child(odd)').addClass('even');
将其更改为
$('table tbody:first child tr:first child')
这确保将从所有表中选择第一个tbody的第一行,然后添加其他条件


:first
将获得jQuery包装集中的第一个元素,而不是每个表中的第一个。我恳请您更彻底地阅读:p:
描述:选择第一个匹配的元素。
我也建议您阅读以下内容:
While:first只匹配一个元素,而:first-child选择器可以为每个父元素匹配多个:一。
谢谢您的更正!:我刚意识到第一个孩子和第一个孩子是不同的。没什么大不了的。我花了很长时间才意识到这一点谢谢你的答复。不幸的是,这只是第一行的样式。我需要条带化从第一行开始,然后在文档中的每个表中设置每个行的样式。但您的问题就是这样表述的:
,并希望在每个表的第一个tbody行中添加行颜色
:我可以建议您编辑您的问题以反映您刚才所说的内容吗?在代码中添加:n个孩子(奇数)起作用了。$('tbody tr:visible:nth child(odd),#popUp tbody tr:nth child(odd)')。不是('.uploadBtn、.spacer、.hidden、thead tr、tfoot tr')。addClass('偶数');哦,这很有道理。我在下面的其他回答中纠正了同样的错误/英雄联盟