用jQuery删除表行最好的方法是什么?


当前回答

以下是可以接受的:

$('#myTableRow').remove();

其他回答

我知道这是一个老帖子,但我也想做同样的事情,发现公认的答案对我不适用。假设JQuery在写这篇文章之后一直在前进。

不管怎样,我发现下面的方法对我很有用:

$('#resultstbl tr[id=nameoftr]').remove();

不知道这对谁有帮助。我上面的例子是一个更大的函数的一部分,所以没有将它包装在事件侦听器中。

以下是可以接受的:

$('#myTableRow').remove();

你可以使用:

$($(this).closest("tr"))

用于查找元素的父表行。

它比parent().parent()更优雅,这是我开始做的事情,很快就认识到我的错误。

——编辑 有人指出,这个问题是关于去除这一行的……

$($(this).closest("tr")).remove()

正如下面指出的,你可以简单地做:

$(this).closest('tr').remove();

类似的代码片段可用于许多操作,例如在多个元素上触发事件。

简单. .试试这个

$("table td img.delete").click(function () {
    $(this).parent().parent().parent().fadeTo(400, 0, function () { 
        $(this).remove();
    });
    return false;
});
$('#myTable tr').click(function(){
    $(this).remove();
    return false;
});

甚至是更好的

$("#MyTable").on("click", "#DeleteButton", function() {
   $(this).closest("tr").remove();
});