用于选择第n个元素的jQuery伪代码不起作用?
我有这个用于选择第n个元素的jQuery伪代码不起作用?,jquery,jquery-selectors,Jquery,Jquery Selectors,我有这个表,对于它的每一行,我想选择第二个td。我知道最简单的方法(或者至少有一种方法)是使用each()并对所有tr进行循环,然后在每个循环内的某个变量中选择/存储第二个td 但是我在想,如果有一个直接的伪代码可以帮助我在没有任何循环的情况下直接完成这个任务,可能是each()或者其他什么 当我这么做的时候 $('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td') $('#ctl00_Content
表
,对于它的每一行,我想选择第二个td
。我知道最简单的方法(或者至少有一种方法)是使用each()
并对所有tr
进行循环,然后在每个循环内的某个变量中选择/存储第二个td
但是我在想,如果有一个直接的伪代码可以帮助我在没有任何循环的情况下直接完成这个任务,可能是each()
或者其他什么
当我这么做的时候
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:odd')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:eq(2)')
它给了我所有的td(s)
(大约40,8行,每行5列)
当我这么做的时候
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:odd')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:eq(2)')
它给了我一半的td(s)奇数
当我这么做的时候
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:even')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:2')
同样,它给了我20个td(s),一个偶数
但当我这么做的时候
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:even')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:2')
它表示语法错误,无法识别的表达式:不支持的伪:2
但是当我这么做的时候
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:odd')
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth > tbody > tr > td:eq(2)')
它只显示一个td
???就第一行而言,我的意思是,如果我应用伪码:奇数
或:偶数
,它会给出所有行的td(s)
,但当我做:eq(2)
时,它只会给出第一行的第二个td
???
那么,我如何获得所有行的第二个td
,最好不要使用每种或任何类型的循环,而是使用某种伪代码
ps:我在firefox控制台上运行了这个,以防万一您想知道“语法错误,无法识别的表达式:不支持的伪:2”是什么意思吗?请改用
像td:n个孩子(2)
试试这个:
$('#ctl00_ContentPlaceHolder1_grdSelectedCloth tr td:nth-child(2)'); // would select all cells that are in the 2nd column