繁体   English   中英

如何在数据表中指定列宽?

[英]How to specify the column width in a DataTable?

我有以下数据表:

$(function() {
    var dataTableColumns = [
        { "sType": "numeric" },     null, null, null, null, null,
        null, null, null, null, null, { "sType": "date-dayofweek" },
        null, null, null, null, null, null, { "sType": "date-dayofweek" },
        null, null, null, null, null, 
        null, null, null, null, null,
        null, null, null, null, 
        null, null, null, null,  
        null, null, null, null,  
        null, { "sType": "date" }, null
    ];

    oTable = $('#example').dataTable({
        "bPaginate" : true,
        "aaSorting": [ [0,'asc'] ],
        "aoColumns" : dataTableColumns,
        "oLanguage": {
            "sLengthMenu": 'Show <select>'+
                '<option value="10">10<\/option>'+
                '<option value="25">25<\/option>'+
                '<option value="50">50<\/option>'+
                '<option value="100">100<\/option>'+
                '<option value="-1">All<\/option>'+
                '<\/select> records'
        },
        "iDisplayLength": -1,
    });
});

上面的数据表中很少有列包含文本数据,我想为这些列指定width选项。 我尝试了各种选项bAutoWidth,sWidth,td宽度,css样式,fnAdjustColumnSizing,但似乎没有任何效果。我不知道出了什么问题。

我想通了。 在表格的html声明样式(宽度:4000像素)和bAutoWidth:假中提供以下选项。 我知道这是解决问题的一种蛮力方法,但是我别无选择。 我真的不喜欢datatable设置的列宽。

如果使用的是DataTable 1.10.x或更高版本,则必须知道autoWidth参数必须设置为false才能正常工作。

请参阅以下示例:

$('#example').dataTable( {
  "autoWidth": false,
  "columnDefs": [
    { "width": "20%", "targets": 0 }
  ]
} );

注意:即使是官方文档也不会告诉您。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM