我想在dataTable API中禁用sort属性。我使用bsort:false来禁用所有列的排序。
这很好,但仍然是第一列显示排序图标。为什么?
$("#reportgrid").DataTable({
"order": [],"bSort" : false,
"iDisplayLength": 10,
"sDom": '<"top">rt<"bottom"lp><"clear">',
});
我将此代码用于dataTable。
这是我网格的快照。其中第一列有sorted_asc的css,但我已经禁用了排序。
那么,如何从第一列中删除排序图标?
答案 0 :(得分:3)
我找到了答案。 b为每个列添加了false,然后只删除了图标。
$("#reportgrid").dataTable({"order": [],
"aoColumns": [
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false },
{ "bSortable": false }
],
"sDom": '<"top">rt<"bottom"lp><"clear">'});
答案 1 :(得分:2)
我知道这是一篇过时的文章,但是今天我遇到了同样的问题,下面的解决方案对我有用。它将从第一列中删除排序图标。
$('#table').dataTable({
'columnDefs': [{ 'orderable': false, 'targets': 0 }], // hide sort icon on header of first column
'aaSorting': [[1, 'asc']] // start to sort data in second column
});
答案 2 :(得分:1)
尝试使用最新版本:
$('#reportgrid').dataTable( {
"columnDefs": [
{ "orderable": false, "targets": 0 }
]
} );
答案 3 :(得分:0)
根据datatables文档,您可以使用ordering选项启用或禁用列的排序
$("#reportgrid").DataTable({
"ordering": false,
"iDisplayLength": 10,
"sDom": '<"top">rt<"bottom"lp><"clear">',
})
答案 4 :(得分:0)
一种非常简单的解决方案(在我的情况下无需使用CSS即可工作)是告诉DataTables从第二列开始而不是使用order initialize属性选项对第一列进行排序(请检查数据表引用-Initial order (sort) to apply to the table ):
"order": [[1, 'asc']]
如果该列被禁用排序,则会从第一列删除排序图标。