当第二个带有删除类的标签被点击时,我想删除整个部分!
HTML:
<div class="tr">
<div class="tbl-cell">
<input id="txt_1" type="text" />
</div>
<div class="tbl-cell">
<a href="#" class="remove" ></a>
</div>
</div>
我怎样才能在jquery中这样做? 我尝试使用此代码:
JQuery的:
$("body").on("click",".remove", function(e){
if( x > 1 ) {
$(this).parent('div').remove();
x--;
}
但它只删除第二个内部div,它包含一个带有remove类的标记。
答案 0 :(得分:0)
使用.closest()与类div
获取最接近的tr
元素。
$("body").on("click", ".remove", function (e) {
if (x > 1) {
$(this).closest('div.tr').remove();
// ^^
x--;
}
.closest()
对于集合中的每个元素,通过测试元素本身并遍历DOM树中的祖先来获取与选择器匹配的第一个元素。
答案 1 :(得分:0)
使用:
$(this).closest("tr").remove();
删除整行,而不仅仅是div。
答案 2 :(得分:0)
使用
$(this).parents(".tr").remove();
或
$(this).closest(".tr").remove();