我有一张桌子,分成如下:
<table id="myTable">
<thead>
<tr>
<th></th>
</tr>
</thead>
<tbody>
<tr>
<td></td>
</tr>
<tr>
<td></td>
</tr>
<!-- unknown number of rows -->
</tbody>
</table>
我需要选择此表中的最后一个<tr>
。我试过了$('#myTable > td:last')
,但这似乎并不奏效。当我console.log($('#myTable > tr:last').html())
时,我得到undefined
。
答案 0 :(得分:1)
您对$('#myTable > tr:last')
有正确的想法,但表格实际上还包含<tbody>
标记...如果您不在自己中添加一个标签,那么浏览器会为您提供。所以你需要改为使用它:
$('#myTable tr:last')
不要使用>
选择器,因为这要求后面的元素必须是前一个元素的 direct 子元素。
此外,$('#myTable > td:last')
肯定是不正确的,因为<td>
元素永远不是<table>
元素的直接子元素 - 它位于<tr>
内部,转弯位于<tbody>
或<thead>
。
答案 1 :(得分:1)
>
从父级中选择一个直接子元素,因此它不会选择嵌套在td
#myTable
请尝试使用此选择器:
$('#myTable tr:last-child td')
或者,如果您想要上一个td
tr
$('#myTable tr:last-child td:last-child')