【问题标题】:jQuery - select table cells without selecting from a nested tablejQuery - 选择表格单元格而不从嵌套表格中选择
【发布时间】:2011-03-06 11:16:49
【问题描述】:

我写了一些 jQuery 来从具有特定类的表中选择单元格;在这种情况下,“你好”。但是,该表具有具有同一类列的嵌套表。如何从外部表中选择单元格但不从内部选择单元格?见下文:

HTML:

标签: jquery html jquery-selectors


【解决方案1】:

你想要的是避免递归太深,所以你可以这样:

$('table:first > tbody > tr > td.hello')

我相信这相当于

$('table:first').children('tbody').children('tr').children('td.hello')

【讨论】:

  • 无论你的 是否在 tbody 内,你都必须使用 tbody 选择器。
【解决方案2】:

如果外部表上的类保留,您可以使用:

$('table.foo > tbody > tr > td.hello');

这里需要注意的一点可能是<tbody> 元素始终 存在,即使您没有明确指定它。由于<tbody> 元素的SGML/HTML/XHTML/whatyacallit 定义的性质,它有一个可选 开始标记。即使源不包含,解析表格时也会创建DOM元素。

【讨论】:

  • 我似乎记得在 Internet Explorer 的早期版本中,关于 tbody 元素的自动存在存在一些歧义。有没有人碰巧对此有明确的参考?