如何选择TD不包含表格的所有TR元素?

时间:2012-01-15 16:09:29

标签: jquery

如何选择:

  • 表格中的所有行(第一行除外)
  • 连续的每个TD 是否包含表格?

我试过了:

var tbl = grd.find("tr:gt(0)").find("tr:not(:has(table)");

但这不会返回任何行。

3 个答案:

答案 0 :(得分:2)

这假设您定位的是最外层table元素的行。

$('#mytable > tbody > tr').slice(1)
                          .filter('tr:not(:has(table))');

http://jsfiddle.net/cvtqM/


或者如果grd是外部表......

grd.children()
   .children()
   .slice(1)
   .filter('tr:not(:has(table))');

答案 1 :(得分:1)

grd.find("tr").slice(1).filter( function(){
    return !this.getElementsByTagName("table").length;
});

这完全取决于grd是什么。

答案 2 :(得分:0)

您可以使用此选择器:

var tbl = $("tr:not(:has(table)):not(:first)", grd);

演示:http://jsfiddle.net/ZHTDq/

这会选择表中<td>个后代的行,不确定这是否符合您的要求。