所以我使用DataTables并将scrollX
参数设置为true,但这会导致thead列崩溃。
注意:数据表作为反应项目的一部分出现在Bootstrap模式中。
我该如何解决这个问题?
当我点击其中一列时,会使其刷新,它会自行修复。此外,如果我删除scrollX
,它也不会崩溃。
初始化代码:
$('#item-search').DataTable( {
ajax: {
"data": {
type: "map_items",
map_id: this.map_id
},
"dataSrc": (r) => {
console.log(r);
return r.data;
},
type: "POST",
url: "src/php/search.php"
},
autoWidth : false,
columns: [
{
"data": "brand"
},
{
"data": "name"
},
{
"data": "quantity"
},
{
"data": "measurement"
},
{
"data": "type"
},
],
dom: 'rtlip',
language: {
"info": "Showing page _PAGE_ of _PAGES_",
"infoFiltered": ""
},
lengthMenu: [ 1, 2, 3 ],
pageLength: 1,
processing: true,
responsive: true,
scrollX: true,
select: {
style: "multi"
},
serverSide: true
});
答案 0 :(得分:1)
在数据表初始化中包含以下属性。
autoWidth : true
随着添加此
"fnInitComplete": function(oSettings) {
$( window ).resize();
}
"fnDrawCallback": function(oSettings) {
$( window ).trigger('resize');
}
答案 1 :(得分:1)
应使用以下代码初始化DataTable以实现水平滚动:
"sScrollX": "100%",
"sScrollXInner": "110%",
"bScrollCollapse": true,
"fixedColumns": {
"leftColumns": 1
}
答案 2 :(得分:0)
$('#DataTableID').DataTable({
//"scrollX": true,
"initComplete": function (settings, json) {
$("#DataTableID").wrap("<div style='overflow:auto; width:100%;position:relative;'></div>");
},
});
答案 3 :(得分:0)
这项工作在我的 angular 项目中
this.dtTarifas = {
scrollX: true,
autoWidth: false,
lengthChange: false,
responsive: false
}
我的 package.json 中有 "angular-datatables": "7.0.0"