DataTable jquery - 如何从第一列中删除排序图标?

问题描述 投票:0回答:5

我想禁用 dataTable API 中的排序属性。我使用 bsort:false 禁用所有列的排序。

这很好用,但第一列仍然显示排序图标。为什么?

$("#reportgrid").DataTable({
    "order": [],"bSort" : false,
    "iDisplayLength": 10,
    "sDom": '<"top">rt<"bottom"lp><"clear">',
});

我将此代码用于数据表。

enter image description here

这是我的网格的快照。其中第一列具有 sorting_asc 的 css,但我已经禁用排序。

那么,如何从第一列中删除排序图标?

jquery css sorting datatable removeclass
5个回答
7
投票

我知道这是一篇旧帖子,但我今天遇到了同样的问题,下面的解决方案对我有用。它将删除第一列中的排序图标。

$('#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 
});

5
投票

我找到了答案。 bStorable false 对于每个列,然后仅删除图标。

$("#reportgrid").dataTable({"order": [],
    "aoColumns": [
    { "bSortable": false },
    { "bSortable": false },
    { "bSortable": false },
    { "bSortable": false },
    { "bSortable": false },
    { "bSortable": false }
],
"sDom": '<"top">rt<"bottom"lp><"clear">'});

4
投票

一个非常简单的解决方案,在我的情况下不需要任何 CSS 就可以工作,就是告诉 DataTables 使用顺序初始化属性选项从第二列而不是第一列开始排序(检查数据表参考 - 初始顺序(排序)到适用于表):

"order": [[1, 'asc']]

如果该列禁用排序,这将从第一列中删除排序图标。


2
投票

尝试最新版本:

$('#reportgrid').dataTable( {
  "columnDefs": [
    { "orderable": false, "targets": 0 }
  ]
} );

1
投票

根据数据表文档,您可以使用 ordering 选项来启用或禁用列排序

$("#reportgrid").DataTable({
    "ordering": false,
    "iDisplayLength": 10,
    "sDom": '<"top">rt<"bottom"lp><"clear">',
})
© www.soinside.com 2019 - 2024. All rights reserved.