一般:
如何在jQuery中选择元素的第一个匹配祖先?
例:
拿这个HTML块
<table> <tbody> <tr> <td> <a href="#" class="remove">Remove</a> </td> </tr> <tr> <td> <a href="#" class="remove">Remove</a> </td> </tr> </tbody> </table>
我可以通过点击“删除”使用这个jQuery代码删除表中的一行:
$('.remove').click(function(){ $(this).parent().parent().hide(); return false; });
这工作,但它是相当脆弱。如果有人将< a>转换为< div>,例如,它会断开。在jQuery中是否有遵循此逻辑的选择器语法:
“这里是一个元素,现在找到最接近的祖先匹配一些选择标准,并返回它”
谢谢
解决方法
那将是
closest
:
$(this).closest('tr').hide();