数据表禁用搜索选项可搜索无法正常工作

时间:2017-01-16 14:42:01

标签: javascript jquery datatables

这是我的代码,我正在尝试禁用除全局搜索之外的所有列的搜索。 这总是搜索我定义的主键。使用数据表示例服务器端类。

var datatable = $('#datatable').DataTable({
        "ajax": "/get_data/",
        "processing": true,
        "serverSide": true,
        "deferRender": true,

        "columns": [
            {"searchable": false, "data": "id"},
            {"searchable": false, "data": "user_id"},
            {"searchable": true, "data": "bl_number"},
            {"searchable": false, "data": "invoice_number"},
            {"searchable": false, "data": "ship_date"},
            {"searchable": false, "data": "eta_date"},
            {"searchable": false, "data": "vessel"},
            {"searchable": false, "data": "port_of_load"},
            {"searchable": false, "data": "port_of_discharge"},
            {"searchable": false, "data": "containers"},
            {"searchable": false, "data": "status"}
        ],

        "initComplete": function(settings, json) {
            $(this).show();
        }
    });

    datatable.on('click', '.btn-edit', function(){
        var data = datatable.row($(this).closest('tr')).data();
        edit(data);
    });

如果我使用数组而不是json对象,我可以使用以下代码,它工作正常。但我需要使用Json对象而不是数组。

var datatable = $('#datatable').DataTable({
    "ajax": "/get_data/",
    "processing": true,
    "serverSide": true,
    "deferRender": true,

    "columnDefs": [ 
        {
            "targets": 0,
            "render": function ( data, type, full, meta ) {
                return '<a href="javascript:;" class="btn-edit">Edit</a>';
            }
        },
        { targets: 1, searchable: true },
        { targets: '_all', searchable: false }
    ]
});

datatable.on('click', '.btn-edit', function(){
    var data = datatable.row($(this).closest('tr')).data();
    edit(data);
});

0 个答案:

没有答案