在表中检索多个

时间:2014-10-08 16:08:24

标签: jquery

HTML:

<table>
<tbody>
<tr>
<td> Info! </td>
<td> Null </td>
</tr>
<tr>
<td> 
Info 2
</td>
</tr>
</tbody>
</table>

JS:

var elem = $("tr");

我试过了:

elem.find("td").get(0); 

elem[1].find("td").get(0);

它适用于选择不同的表行,但我无法选择<td>

但这只会让我获得第一行的<td>标记。

我如何获得第二个tr的td标签?

3 个答案:

答案 0 :(得分:1)

假设elem包含所有<tr>元素,则:

elem.eq(1).find('td');

1,因为JavaScript是零索引的(因此第一个是0,第二个是1等。

或者,稍微麻烦一点:

elem.filter(':nth-child(2)').find('td');

2因为CSS的:nth-child()伪类是从一开始的(所以第一个是1,第二个是2)。

参考文献:

答案 1 :(得分:1)

在其他解决方案中,您可以使用nth-of-type选择器:

$('tr td:nth-of-type(2)')

所以扩展你的试验:

var elem = $("tr");

elem.find('td:nth-of-type(2)');

或者,或者:

$('table tr:nth-child(2) td')

任何这些都应该可以解决问题。

答案 2 :(得分:1)

您可以使用:nth-child css选择器:

$("tr:nth-child(2) td")

或jquery :eq()选择器(基于 0索引):

$("tr:eq(1) td")