我有一堆HTML TABLE标签,我正在尝试使用JQuery深入到所有生成的TABLE中的特定TD单元。问题是我让JQuery获得了正确的TD单元格,但它只获得了具有相同结构的一系列TABLE中的第一个单元格。
这是我正在使用的JQuery到达正确的TD:
<script type="text/javascript">
$(function ($) {
$(".dataContent div table tbody tr td").first().css("background", "yellow");
});
</script>
这是简化的HTML结构:
<td class="dataContent">
<a href="#"></a>
<div>
<table>...</table>
<div>
<table cellspacing="0" cellpadding="0" style="border-width:0;">
<tbody>
<tr>
<td><a href="#"><img /></a></td><!--this cell-->
<td><div>random cell</div></td>
</tr>
</tbody>
</table>
<!--Generated Tables with same structure as the TABLE above-->
<table></table>
<table></table>
<table></table>
<table></table>
</div>
</div>
</td>
因此,我不仅希望获得第一个TABLE中的第一个单元格,还要获取下面所有生成的表格中的第一个单元格。任何帮助将不胜感激。
答案 0 :(得分:1)
使用td:first-child
而不是.first()
来获取每个表格中行中第一个的所有单元格:
$(".dataContent div table tbody tr td:first-child").css("background", "yellow");
使用:first
选择器或.first()
方法会导致jQuery仅从匹配的所有元素中返回第一个元素,因此它永远不会超出一个牢房。
答案 1 :(得分:1)
$(".dataContent div table").eq(0).find('td').eq(0)
为您提供第一张表格中的第一个TD。
$(".dataContent div table").length
将为您提供表格数量。
制作一个循环。容易。