我有以下数据表:
$(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,
});
});
上面数据表中的几列都包含文本数据,我想为这些列指定宽度选项。我尝试了各种选项bAutoWidth,sWidth,td width,css style,fnAdjustColumnSizing,但似乎没什么用。我不知道出了什么问题..请帮忙!!
答案 0 :(得分:4)
我想出来了。在表的html声明样式(宽度:4000px)和bAutoWidth:false中提供以下选项。我知道这是一种解决问题的蛮力方法,但我别无选择。我真的不喜欢datatable设置的列宽。
答案 1 :(得分:0)
如果您使用的是DataTable 1.10.x或更高版本,则必须知道autoWidth
参数必须设置为false
才能使其正常工作。
见这个例子:
$('#example').dataTable( {
"autoWidth": false,
"columnDefs": [
{ "width": "20%", "targets": 0 }
]
} );
注意:即使official documentation也不会告诉你。