禁用除第一列之外的每个列的排序
我目前正在使用Datatables作为自定义系统,我想禁用每列的排序,但第一个。
当我添加用逗号分隔的值时,我尝试使用以下代码工作正常
"aoColumnDefs": [ { 'bSortable': false, 'aTargets': [ 1, 2, 3, 4 ] } ],
但我的表格列号因每个文件而异,所以我可以有3列或12列,我不想手动添加每个文件的值。
如果我添加的值多于我在一个文件中的列,我会收到以下错误,并执行停止
未捕获的TypeError:无法读取未定义的属性“className”
那么,有什么方法可以获得这些索引并将它们传递给函数?
谢谢!
您可以将特定类添加到您不希望可排序的TH元素。
... ... ...
然后,您可以在aTargets
参数中指定此类。
"aoColumnDefs": [ { 'bSortable': false, 'aTargets': ['no-sort'] } ]
有关Column特定选项的更多信息,请在此处查看。
然后,您可以在aTargets参数中指定此类。
columnDefs: [ { orderable: false, targets: [1,2,3,4,5,6,7,8,9] } ]
这对我有用,看起来更实用(虽然不是很优雅)
columnDefs: [ { "targets": [0], "orderable": true }, { "targets": [''], "orderable": false } ]