我的桌子下面有一个href链接,我希望能够通过点击该链接来操纵表格行但我无法得到它们!
这是我的HTML
<div>
<div> <a href="#remove" class="removelink" > remove </a> </div>
<table>
<tr> <td></td> </tr>
</table>
</div>
我想做类似的事情:
$('.removelink').click(function(){
$(this).parent().siblings('table tr:last').remove();
})
我可以通过
来到桌面$(this).parent().siblings('table')
但我不能通过像
这样的行来获取行$(this).parent().siblings('table tr')
答案 0 :(得分:2)
您可以使用find
从tr
转到table
:
$('.removelink').click(function(){
$(this).parent().siblings('table').find('tr:last').remove();
});
这是一个working example。如果您的HTML结构始终与您展示的完全一致,那么您可以使用next()
代替siblings('table')
来缩短代码。
您当前代码的问题是,siblings('table tr')
会查找div
的兄弟tr
,而且没有!{/ p>
答案 1 :(得分:1)
.siblings(selector)
将返回与选择器匹配的某个元素的所有兄弟节点。
.siblings('table tr')
只会返回一些内容,如果上下文元素有tr
个元素作为兄弟,但div
没有。
只需使用.find
:
$(this).parent().siblings('table').find('tr').last()
答案 2 :(得分:0)
var $context = $(this).parent().siblings('table');
$("tr:last", $context);