gpt4 book ai didi

javascript - DataTables表头列宽与表体列宽有时不匹配如何解决?

转载 作者:行者123 更新时间:2023-11-29 20:54:12 24 4
gpt4 key购买 nike

使用了以下 .js 文件。

  • jquery.dataTables.min.js(数据表 1.10.16)。
  • dataTables.bootstrap.min.js(DataTables Bootstrap 3 集成)。
  • dataTables.responsive.min.js(响应式 2.2.1)。
  • dataTables.scroller.min.js(Scroller 1.4.4)。

使用了以下 .css 文件。

  • jquery.dataTables.min.css
  • dataTables.bootstrap.min.css
  • responsive.dataTables.min.css
  • 滚动条.dataTables.min.css

这是表格布局:

<table class="table table-responsive table-bordered table-striped table-hover" id="tbl-cat-lvl-two" style="width:100%">
<thead>
<tr>
<th>ID</th>
<th>Code</th>
<th>Icon</th>
<th>Category Label</th>
<th>Precedence</th>
<th>Visibility</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
</tbody>
</table>

这是表格脚本:

catLvl2table = $('#tbl-cat-lvl-two').DataTable( {
"processing" : true,
"serverSide" : true,
"order" : [[ 4, "asc" ]],
"responsive" : true,
"scrollY" : "236px",
"scrollCollapse": true,
"ajax" : {
"url" : baseUrl+getCatLvl2DataUrl+lvl1CatId,
"type" : "POST"
},
"columnDefs" : [
{ "visible" : false, "targets": [0] },
{ "orderable" : false, "targets": [0, 2, 5, 6] },
{
className: "align-center check-align-center",
"targets": [6],
"render" : function (data, type, full, meta){
let id = full.id;
return `<button href="" class="btn btn-sm btn-info dt-btn-view" data-id="${id}"><i class="fa fa-eye"></i></button><button href="" class="btn btn-sm btn-primary dt-btn-edit" data-id="${id}"><i class="glyphicon glyphicon-pencil"></i></button><button href="" class="btn btn-sm btn-danger dt-btn-del" data-id="${id}"><i class="glyphicon glyphicon-trash"></i></button>`;
}
}
],
"columns": [
{ "data": "id" },
{ "data": "code" },
{ "data": "icon" },
{ "data": "category" },
{ "data": "precedence" },
{ "data": "visibility" },
],
});

这是输出:enter image description here

最佳答案

<table class="table table-responsive table-bordered table-striped table-hover" id="tbl-cat-lvl-two" style="width:100%">
<thead>
<tr>
<!-- <th>ID</th> --> //Remove completely this column
<th>Code</th>
<th>Icon</th>
<th>Category Label</th>
<th>Precedence</th>
<th>Visibility</th>
<th>Actions</th>
</tr>
</thead>
<tbody>
</tbody>
</table>

只需从“columnDefs”数组中删除以下代码即可。

{ 
className: "align-center check-align-center",
"targets": [6],
"render" : function (data, type, full, meta){
let id = full.id;
return `<button href="" class="btn btn-sm btn-info dt-btn-view" data-id="${id}"><i class="fa fa-eye"></i></button><button href="" class="btn btn-sm btn-primary dt-btn-edit" data-id="${id}"><i class="glyphicon glyphicon-pencil"></i></button><button href="" class="btn btn-sm btn-danger dt-btn-del" data-id="${id}"><i class="glyphicon glyphicon-trash"></i></button>`;
}
}

并添加这段代码:

"columns": [
{ "data": "code" },
{ "data": "icon" },
{ "data": "category" },
{ "data": "precedence" },
{ "data": "visibility" },
{ "data" : null,
className : "align-center" // You should style for this class
}
],
"rowCallback": function(row, data, index) {
$('td:eq(5)', row).html(
'<button href="" class="btn btn-sm btn-info dt-btn-view" data-id="'+data.id+'"><i class="fa fa-eye"></i></button>'+
'<button href="" class="btn btn-sm btn-primary dt-btn-edit" data-id="'+data.id+'"><i class="glyphicon glyphicon-pencil"></i></button>'+
'<button href="" class="btn btn-sm btn-danger dt-btn-del" data-id="'+data.id+'"><i class="glyphicon glyphicon-trash"></i></button>'
);
},

在外部CSS类中

.align-center {
text-align: center; // whatever you want
}

关于javascript - DataTables表头列宽与表体列宽有时不匹配如何解决?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50186302/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com