如何为表格中每行的每个第一个单元格指定样式?
$("#myTable tr td:first").addClass("black");
答案 0 :(得分:104)
使用:first-child
伪类而不是:first
。
$("#myTable tr td:first-child").addClass("black");
:first
伪类实际上选择了列表中返回的第一个元素。例如,$('div span:first')
将返回仅在第一个碰巧返回的div下的第一个范围。
:first-child
伪类选择特定父级下的第一个元素,但返回的元素与第一个子元素一样多。例如,$('table tr td:first-child')
返回每一行的第一个单元格。
当您使用:first
时,它只返回恰好被选中的第一行的第一个单元格。
有关更多信息,请参阅jQuery文档:
答案 1 :(得分:9)
你非常接近,我认为你所需要的只是:first-child
而不是:first
,所以这样的事情:
$("#myTable tr td:first-child").addClass("black");
答案 2 :(得分:5)
$("#myTable tr").each(function(){
$(this).find('td:eq(0)').addClass("black");
});
答案 3 :(得分:5)
$("#myTable tr").find("td:first").addClass("black");
答案 4 :(得分:3)
尝试:
$("#myTable td:first-child").addClass("black");