在数据表中隐藏默认列的默认列

时间:2016-03-19 17:47:09

标签: jquery datatables

我是datatable的新手,我正在使用colvis来显示表中的列,我从数据库中获取的所有数据,并且我希望默认隐藏几个字段。我正在使用这种方法进行扩展。

var oTable = table.dataTable({
        "language": {
            "aria": {
                "sortAscending": ": activate to sort column ascending",
                "sortDescending": ": activate to sort column descending"
            },
            "emptyTable": "No data available in table",
            "info": "Showing _START_ to _END_ of _TOTAL_ entries",
            "infoEmpty": "No entries found",
            "infoFiltered": "(filtered1 from _MAX_ total entries)",
            "lengthMenu": "_MENU_ entries",
            "search": "Search:",
            "zeroRecords": "No matching records found"
        },



        buttons: [
            { extend: 'csv', className: 'btn purple btn-outline ' },
            { extend: 'colvis', className: 'btn dark btn-outline', text: 'Columns'}
        ],



        "pageLength": 20,

        "dom": "<'row' <'col-md-12'B>><'row'<'col-md-6 col-sm-12'l><'col-md-6 col-sm-12'f>r><'table-scrollable't><'row'<'col-md-5 col-sm-12'i><'col-md-7 col-sm-12'p>>"

    });
}

现在我不知道如何在默认情况下隐藏列并仅在用户选择时显示。

表加载时默认隐藏几列。

谢谢!

3 个答案:

答案 0 :(得分:2)

className: 'hidden'添加到要为响应表隐藏的列。

类似的东西:

$('#example').dataTable({
    "columnDefs": [
        { "visible": false, "targets": [0], className: 'hidden' }
    ]
});

答案 1 :(得分:0)

使用columnDefs.visible选项和columnDefs.targets选项来定义最初将隐藏的列。

$('#example').dataTable( {
  "columnDefs": [
    // Hide second, third and fourth columns
    { "visible": false, "targets": [1, 2, 3] }
  ]
} );

答案 2 :(得分:0)

我用以下代码隐藏第五列:

"aoColumns": [
    null, 
    null, 
    null, 
    null, {
      "bVisible": false,
      "bSearchable": false,
    },
   null
],