无法通过jquery从表中删除特定行

时间:2012-10-26 11:25:21

标签: jquery html

我使用jquery添加新行并删除它们但我的问题是,当我点击减号按钮时,它开始从下到上删除行而不删除特定的row.means如果我填充了10行的数据和现在想要删除第5行,然后在第5行删除减号按钮,它会删除10号,9号等等......我希望只有第5行才能显示它可能会有可能。

这是我的jquery文件:

$(document).ready(function(e) {
    $("#add").click(function() {
        $('#mytable tbody>tr:last').clone(true).insertAfter('#mytable tbody>tr:last');
        var last_sn = $('#mytable tbody>tr:last>td:first').html();
        $('#mytable tbody>tr:last>td:first').html(parseInt(last_sn) + 1);
        return false;
    });
    $('#minus').click(function() {
        $('#mytable tr:last-child').remove();
    });
});​

3 个答案:

答案 0 :(得分:1)

请改为:

$('#minus').click(function() {
    $(this).closest("tr").remove();
});​

您的代码$('#mytable tr:last-child').remove();将始终删除最后一行。 此外,您应该将minus设为一个类,因为它将被复制为多行,从而导致多个元素具有相同的id

答案 1 :(得分:0)

$('#mytable tr:last-child').remove();应为

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

答案 2 :(得分:0)

$('#mytable tr:last-child')。remove();将永远删除最后一行。

如果您有几个减号按钮,那么您不应该使用相同的ID(#minus)而是使用类。

小提琴:http://jsfiddle.net/k8dAs/

$('.minus').click(function()
{
  $(this).parents("tr").remove();
});