$(".yourtableclassname tr:not(:first)").each(function() {
}
我使用上面的内容迭代表中除第一行之外的所有行,因为这些是列标题。然后根据某些列值,我设置该行的背景颜色。
如果我只有一张桌子,那么效果很好。但是如果我有两个具有相同类名的表,它会将第二个表的行视为第一个表的行。所以第二个表的行标题的背景颜色已经设置好了。
无论如何,我能解决这个问题吗?我可能在表单上有几个表,所以我不想使用id。
- 示例代码 -
$(".Grid tr:not(:first)").each(function() {
var nameofField = $(this).find("td:nth-child(4)").html();
if(nameofField != ""){
$(this).closest('tr').addClass('Red').removeClass('Blue');
}
}
答案 0 :(得分:1)
更新颜色的代码看起来是正确的。我猜你没有错误地描述这个问题。第二个表的常规行可能正确更新,问题只在于标题行。
试试这个选择器:
$(".yourtableclassname tr:not(:first-child)")
这将跳过每个表的第一行。您的选择器刚刚跳过第一个表的第一行。
答案 1 :(得分:0)
您是否考虑过将<th></th>
用于标题行?那应该解决它。
编辑:如果您无法使用<th></th>
使用$(".yourClassName").finds("tr:not(:first)")
。应该做的伎俩!