【问题标题】:Specify multiple columns with nth-child()使用 nth-child() 指定多列
【发布时间】:2010-09-07 01:12:16
【问题描述】:

我在我的 jquery 选择器中使用 nth-child 来识别要修改的列。我有 5 列 (1-5),我只想修改 2,3 和 4。有没有办法用 nth-child 做到这一点?比如:

$('#example tbody tr td:nth-child(2||3||4)')

我尝试了几种组合,但似乎没有任何效果。我对 jQuery 选择器很陌生,您可以向我提供任何帮助将不胜感激。

问候, 乔钦

【问题讨论】:

  • 你不能在列中添加任何 ids/classes 吗?

标签: jquery css-selectors


【解决方案1】:

你可以像这样使用.nextUntil()

$('#example tbody tr td:nth-child(1)').nextUntil(':nth-child(5)');​​​​​​​​​​​​​​​​​​​​​​​

【讨论】:

  • 谢谢,这也正是我想要的。
【解决方案2】:
$('#example tbody tr td:not(:last-child, :first-child)')

【讨论】:

  • 谢谢,这正是我想要的。
【解决方案3】:

我会使用切片,它更具动态性。

$('#example tbody tr td').slice(1,4)

这里是切片方法的API

【讨论】:

  • 这不适用于每行。它将是找到的所有 <td> 元素的一部分。
  • 谢谢,我以前从未见过这种方法,但我敢肯定它会很方便。
  • 这不正确。其他两个答案确实在每行的基础上工作,因为使用的td 选择器是nth-child 的一些变体。他们都将选择每行的第 2 到第 4 列。你的没有这样做,因为它只抓住了整个系列的一小部分。这是一个示例:jsfiddle.net/m9JH7
猜你喜欢
  • 2013-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-07-30
  • 1970-01-01
  • 1970-01-01
  • 2012-03-07
相关资源
最近更新 更多