首页 > 解决方案 > 数据表:如何在 columnDefs 中动态设置“目标”

问题描述

我有数据表和下拉菜单。具有列列表的下拉列表。我想从搜索中排除选定的列。当用户更改下拉列表时,我想在 columnDefs 中动态设置“目标”

这是我的代码:

var columns = [];
//When I hardcode like this: var columns = [0, 1, 2] it works fine

$(document).ready(function () {
    getData();
    columns.push(eval($('#dropdown').val()));
    $('#dropdown').change(function () {
        columns = [];
        columns.push(eval($('#dropdown').val()));
    })
});

function getData() {
    $('#MyTable').DataTable({
        dom: 'Bfrtip',
        ajax: ({
            type: "POST",
            url: "API/Users.asmx/getData",
            dataType: "json",
            dataSrc: function (data) {
                buildMyDatatable(data)
            }
        }),
        columnDefs: [
            { "searchable": false, "targets": columns } //I want this to be dynamic
        ]
    });
}

标签: jquerydatatables

解决方案


推荐阅读