如何使用jquery中的复选框删除多行

时间:2016-12-21 05:37:07

标签: jquery mysql datatables

现在我正在jquery datatable中进行crud操作,如果我点击复选框而不是如果我点击删除按钮,那么我将在jquery datatable中进行crud操作,而不是所有已检查的行记录应该从表和数据库中删除。如果有人知道的话解决方案请帮忙。谢谢 删除按钮 复选框" /> 删除操作的代码

<script type="text/javascript" language="javascript" class="init">
    $(document).ready(function() {
        var table = $('#employee_data').dataTable();
        $('#delete').click(function () {
            if ($('.chkNumber:checked').length) {
                var id = '';
                $('.chkNumber:checked').each(function () {
                    id += $(this).val() + " ";
                });
                alert(id);
            }
            else {
                alert('Please select a checkbox');
            }
        });
       });
</script>

2 个答案:

答案 0 :(得分:1)

要从数据表中删除每一行,请在每个循环中执行以下操作:

$('.chkNumber:checked').each(function () {
    $(this).closest('tr').remove()
});

对于服务器端,您将需要ajax,获取数组中已检查元素的所有ID,通过ajax将它们传递给php,然后在数组查询中执行select并删除它们

答案 1 :(得分:0)

我认为最好的方法是通过

将所有已检查的ID收集到一个数组中
var idsToDelete=[];$('.chkNumber:checked').each(function () {
                selectedid = $(this).val();idsToDelete.push(selectedID);
            });

然后将idsToDelete数组发送到服务器/数据库服务并按ID删除。然后再次获取新记录并在html中绑定新列表。 所以不需要在html中明确删除。

如果您从第一个html中删除,可能会发生这样的情况:它不反映但删除了UI。所以最好先从dB中删除。