检测表中的父级

时间:2013-11-24 06:05:21

标签: jquery html-table

如何解决我的问题? 我想点击删除,点击后删除“删除”按钮。 我的JS代码

$(".delete").click(function() {
    var parent_1 = $(this).parent();
    var parent_2 = $(parent_1).parent();
    $(parent_2).remove(); 
    });

我的HTML代码

<table>
    <tr id="row_1"> 
        <td>    <input type="submit" class="delete" value="1" />        </td>
    </tr>
</table>

4 个答案:

答案 0 :(得分:0)

我假设您正在尝试检索delete按钮的父级,并使用.on()方法。请尝试:

$("table").on('click','.delete',function () {
  var parent_1 = $(this).closest("table");
  $(parent_1).remove(); 
});

Demo

答案 1 :(得分:0)

    $('.delete').click(function(){
       console.log($('#table').html())
       var parent_1 = $(this).closest("td");
       $(parent_1).remove(); 
       console.log($('#table').html())
   });

我想这就是你想要的

答案 2 :(得分:0)

使用.parents()检测目标TR。在将其与.Closest()进行比较时,它会从元素traversing开始immediate parent。不是来自current element。这样我们可以在使用.parents()时最小化iteration的一个级别。如需进一步阅读,请参阅此处.parents()

附加说明:此处使用 :first过滤器,因为如果您在嵌套结构中有button,那么捕获第一个结构将会很有帮助。

$(".delete").click(function() {
    $(this).parents("tr:first").remove();    
});

DEMO

答案 3 :(得分:0)

尝试此操作时,如果您点击任何与<tr>

相关的按钮,则会移除<tr>
$(".delete").click(function () {
    var parent_1 = $(this).parent().parent();
    $(parent_1).remove(); 
});