2

我有这个table,对于它的每一行,我想选择第二个td。我知道执行此操作的最简单方法(或至少一种方法)是each()对所有人使用和循环,然后在每个循环内的某个变量中tr选择/存储第二个。td

但是我在想是否可以有一个直接的伪代码可以帮助我直接执行此操作而无需任何循环,可能是each()或其他。

当我这样做..

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td')

它给了我所有td(s)(大约 40、8 行,每行 5 列)

当我这样做时..

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:odd')

它给了我一半td(s)的奇数,

当我这样做时

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:even')

同样,它给了我 20 td(s),偶数。

但是当我这样做时

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:2')

它说Syntax error, unrecognized expression: unsupported pseudo: 2

但是当我这样做时..

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:eq(2)')

它只显示一个td???仅针对第一行,我的意思是,如果我应用伪代码:odd:even,它会td(s)为所有行提供,但是当我这样做时,:eq(2)它只会为第一行提供第二个td???那么,我怎样才能获得td所有行的第二名,最好不要使用每种或任何类型的循环,而是使用某种伪代码?

ps:我在firefox控制台中运行它,以防万一想知道“语法错误,无法识别的表达式:不支持的伪:2”是什么?

4

3 回答 3

2

尝试这个:

$('#ctl00_ContentPlaceHolder1_grdSelectedCloth tr td:nth-child(2)');  // would select all cells that are in the 2nd column
于 2012-12-14T06:10:02.497 回答
0

改为使用:nth-child()

喜欢td:nth-child(2)

http://jsfiddle.net/zerkms/rFnUL/

于 2012-12-14T06:08:28.237 回答
0
$("#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:nth-child(2)")
于 2012-12-14T06:10:58.193 回答