【问题标题】:DataTables set default sorting while ordering is set to falseDataTables 设置默认排序,而 ordering 设置为 false
【发布时间】:2020-01-25 03:13:00
【问题描述】:

我正在尝试按数据表中的列进行排序,同时禁用了排序。

var table = $('#example').DataTable({
    "order": [3,'desc'],
    "ordering": false
});

将通过在此示例中展示问题来尽可能明确:http://live.datatables.net/focajayi/1/edit

如您所见,我正在尝试按年龄降序排序,但它不会对其进行排序,除非我将 'ordering' 设置为 true。

我知道我可以通过 hack 来做到这一点,或者到目前为止我所知道的最漂亮的解决方案是删除 ordering 属性,并改用 columnDefs,这似乎可以按预期工作,但我会想知道是否有全局解决方案,而无需构建 columnDefs 数据。

【问题讨论】:

    标签: datatables columnsorting


    【解决方案1】:

    经过更多研究,我找到了一个足够接近的解决方案。 所以我所做的只是将 ordering 设置为 true,然后在 columnDefs 中指定它。

    var table = $('#example').DataTable({
        "order": [3,'desc'],
        "ordering": true,
        "columnDefs": [{
          "targets": "_all", "orderable": false
        }]
    });
    

    原来可以使用“_all”关键字来应用所有列。 我一直担心必须维护 columnDefs 列表,但有了 '_all' 目标就完美了。

    【讨论】:

      猜你喜欢
      • 2013-12-14
      • 2010-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-12-02
      • 2012-04-05
      相关资源
      最近更新 更多