使用javascript从表中删除行

时间:2012-02-26 17:35:45

标签: javascript jquery

我正在使用javascript添加一些行。我能够通过以下方式实现这一目标:

$('#order_basket > tbody:last').append('<tr><td><b>'+Book+
             '</td><td>'+Type+'</td><td>'+'<span onclick="removeRow()"'+
             'class="label label-important">Remove</span></td></tr>');      
        return false;
});

现在我也希望能够使用javascript删除该行。在有能力的代码中,我有一个名为Remove的标签,它在我的javascript中调用另一个用于删除所选行的函数。但是我无法做到这一点。我用来删除行的代码是:

function removeRow() {
    $(this).parent().remove();
    return false;
}

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:3)

您必须在this事件中传递onclick,如下所示:

'<span onclick="removeRow(this)"'

将功能更改为:

function removeRow(row) {
    $(row).closest('tr').remove();
}

您可以使用:

,而不是通过HTML将事件作为属性传递
        $('#order_basket > tbody:last').append('<tr><td><b>' + Book +
             '</td><td>'+Type+'</td><td>'+'<span'+
             'class="label label-important remove">Remove</span></td></tr>');      
        return false;
});

$('#order_basket > tbody:last').on('click', 'span.remove', function() {
    $(this).closest('tr').remove();
});