你有一个有很多行的表
第一行有<th>
个,然后以下所有行都包含<td>
s
如果我使用下面的脚本并单击第一行并带有<td>
s,我会收到一条警告,说明1.如何在不减去一个的情况下将其设为零。我认为使用“has(td)”会起作用吗?
$('td').click(function(){
var s = $(this).parents('table tr:has(td)').index();
alert(s);
});
<table border="1" width="400px" height="200px">
<tr>
<th></th><th></th><th></th><th></th><th></th>
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td> if I click here it must alert 0
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td> if I click here it must alert 1
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td> if I click here it must alert 2
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td> if I click here it must alert 3
</tr>
<tr>
<td></td><td></td><td></td><td></td><td></td> if I click here it must alert 4
</tr>
</table>
答案 0 :(得分:4)
将a选择器传递给.index()
以过滤出兄弟姐妹
$('td').click(function(){
var s = $(this).parent().index('tr:has(td)');
alert(s);
});