【问题标题】:Datatable selectAll records even searched for particular one数据表 selectAll 记录甚至搜索特定的记录
【发布时间】:2021-01-02 15:00:18
【问题描述】:

我正在使用 Datatable 来显示网格。有selectAll 选项可以选择具有复选框类的所有记录。 我的问题是,当我搜索一个特定 ID 时,它会在多个页面中过滤,然后我转到 selectAll 并选择所有记录,即使它们被隐藏或禁用。

这是我的代码:

oTableCompletedAppt = $('#consignmentnote').dataTable({
    "language": {
        "emptyTable": "-",
        "paginate": {
            "previous": "<",
            "next": ">"
        }
    },
    "searching": true,
    "lengthChange": true,
    "info": true,
    "ordering": true
});

这是selectAlljquery:

$("#selectAll").on("change", function () {
    debugger;
    if ($('#selectAll').is(":checked")) {
        oTableCompletedAppt.$("input[type='checkbox']").attr('checked', $(this.checked));
    } else {
        oTableCompletedAppt.$("input[type='checkbox']").attr('checked', false);
    }
});

【问题讨论】:

    标签: jquery .net datatable


    【解决方案1】:

    编辑:经过进一步审查,这里有一个JSFiddle,其中包含完整的实现和工作示例。
    您必须分 4 步完成:

    1. 使用columns.render 为每一行添加一个复选框
    2. 手柄点击“全选”控件
    3. 处理每个复选框的点击
    4. 在提交表单时迭代行以查找具有在前面步骤中设置的属性checked 的复选框。

    原答案: 为什么不使用selectAll 按钮?
    那么你所要做的就是选择过滤的行:

    {
        text: 'Select All',
        action: function () {
            table.rows({
                search: 'applied'
            }).select();
        }
    }
    

    【讨论】:

    • 你能告诉我我需要在哪里使用这个代码吗?
    • 检查我的编辑,希望它能帮助您解决问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-17
    • 1970-01-01
    • 2017-05-14
    • 1970-01-01
    • 2021-10-03
    • 2014-03-17
    • 1970-01-01
    相关资源
    最近更新 更多