如果特定单元格已清空,则删除表格行jquery

时间:2016-08-11 17:35:15

标签: jquery

我有一个显示过滤器列表的双列表,可以通过单击每个过滤器旁边的一个小“x”图标来删除这些过滤器:

<tr>
    <td class="filter-point">State is</td>
    <td class="tag-column"><div class="tag">California <i class="fa fa-close"></i></div></td>
</tr>

$("td.tag-column .tag i").click(function(){
    $(this).parent().remove();
});

如果已删除所有标记(如果td.tag-column为空),我希望能够删除整行,但我似乎无法找到正确的语法或附加行的方法清空标签清空。

2 个答案:

答案 0 :(得分:1)

只需扩展当前点击事件,在每次删除代码后检查该行是否还有任何代码:

$("td.tag-column .tag i").click(function(){
    var td = $(this).closest('td');
    $(this).parent().remove(); //remove tag
    if (!td.children('.tag').length) td.parent().remove(); //if no tags left, remove row
});

答案 1 :(得分:1)

你可以这样做。

$("td.tag-column .tag i").click(function() {
    $(this).parent().remove();
    var tr = $(this).closest('tr');
    tr.find('.tag').length || tr.remove();
});