如何解决jQuery DataTable第一列默认按最新日期排序不生效问题
解决代码
你尝试的第三种方案逻辑是对的,只是漏了配置项之间的逗号,导致语法错误不生效,修正后的代码如下:
<script> $(document).ready(function () { $('#table_id').DataTable({ // 配置默认按第一列倒序(最新日期在前)排序 "order": [[0, "desc"]], dom: 'B<"clear">lfrtip', buttons: { name: 'primary', buttons: ['copy', 'csv', 'excel', 'pdf'] } }); }); </script>
之前方案失效的原因
- 第一种:
asSorting是列配置的属性,不是DataTable实例的可调用方法,用法错误 - 第二种:
fnSort是1.9及更早版本的废弃API,不兼容现在的主流版本;同时你拼写错误,倒序参数是desc不是acs - 第三种:仅缺少
order配置行末尾的逗号,JS对象的多个属性必须用逗号分隔,语法错误会导致整个配置失效 - 第四种:代码里多了多余的引用符
>存在语法错误,同时asSorting是用来指定列允许的排序方向,不是用来设置默认排序规则的,属性用错
异常排查
如果修改后还是不生效,可以检查两个点:
- 确认第一列的日期是标准可识别格式,要是自定义格式可以给第一列额外加
type: 'date'指定数据类型 - 清理浏览器缓存再刷新,避免旧代码缓存影响
内容的提问来源于stack exchange,提问作者tibas
相关产品推荐
相关产品推荐

