带有Jquery数据表的复杂列宽

时间:2015-09-25 21:41:58

标签: javascript jquery datatables

我使用以下代码

创建了一个数据表
$(document).ready( function () {
    $('#data-table').DataTable( {
        "bFilter": false,
        "scrollY": 300,
        "scrollX": true,
        "paging":   false,
        "ordering": false,
        "info":     false,
        "columnDefs": [
        { "width": "20%", "targets": 0 }
    ]

    });
} );

请注意,我为每个列设置了20%的宽度。我的问题是如何为第1列指定宽度,同时仍能为其余列设置宽度?

我在数据表网站上看过这样的例子:

$('#example').dataTable( {
  "columns": [
    { "width": "20%" },
    null,
    null,
    null,
    null
  ]
} );

但我不认为这对我有用,因为它看起来好像需要我知道我的表预先有多少列,并且用户要求要求列数可变。

1 个答案:

答案 0 :(得分:2)

尝试用此替换columnDefs部分(并添加适当的百分比):

"columnDefs": [
        { "width": "(percentage)%", "targets": "_all" }
        { "width": "(other percentage)%", "targets": 0 }
]

这会将第一列设置为一个宽度,将其他列设置为不同的宽度。

目标定义将受影响的列。将其设置为整数将影响从左到右开始的列(即“”目标“:[0,1]'将影响最左侧和最左侧的列)。负整数会影响从右到左的列。字符串“_all”将影响所有列。