我希望jQuery为表中的所有tr
提供更高的id。
如果我有这张桌子:
<table id="productsTable" style="width:100%;">
<thead>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</thead>
<tbody>
<tr id="Row_0">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_1">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_2">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_3">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4"></td>
</tr>
</tfoot>
</table>
我想获得身份Row_3
。
我可以使用:last selector
,$( "tr:last" )
,但它不起作用,因为它会返回<tfoot>
部分的行。
也许有办法向:last selector
添加过滤器,以找到ID为tr
的最后Row_
。
有什么建议吗?
答案 0 :(得分:1)
您可以使用 attribute start with selector :
$("tr[id^='Row_']:last" )
答案 1 :(得分:1)
假设tbody中的所有行都有id,只需在选择器
中使用tbody
$( "tbody tr:last" )
答案 2 :(得分:1)
您可以使用starts with
alert($("tr[id^='Row_']:last").length);
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="productsTable" style="width:100%;">
<thead>
<tr>
<td colspan="4"></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</thead>
<tbody>
<tr id="Row_0">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_1">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_2">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr id="Row_3">
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="4"></td>
</tr>
</tfoot>
</table>
&#13;
如果您只想在tbody
内找到最后一个tr,请使用:
$("tbody tr:last")