如何按日期对 DataTable 列进行排序

Posted

技术标签:

【中文标题】如何按日期对 DataTable 列进行排序【英文标题】:How to sort DataTable columns by date 【发布时间】:2020-12-22 11:54:10 【问题描述】:

我在我的 Django 应用程序中使用 DataTable。一切正常,但按日期排序是错误的。它按字符串排序,而不是日期。

html:

<script>
        $(document).ready(function () 
            $('.document-table').DataTable(
                "order": [
                    [0, "desc"]
                ],
                "bInfo": false,
                "pagingType": "full_numbers",
            );
        );
</script>

【问题讨论】:

DataTables 中有各种与日期排序相关的questions and answers。使用moment.js 库是一种流行的方法。见here。 这是一个使用moment的具体示例:Datatable: date / time sorting plug-in not ordering 另一个很好的方法是使用orthogonal data。这允许您拥有多个版本的值 - 一个用于显示目的,一个用于排序,一个用于过滤。因此您可以将日期显示为25-Dec-2020,但在幕后您可以使用20201225 作为排序值。 这能回答你的问题吗? Datatable date sorting dd/mm/yyyy issue 【参考方案1】:

我已经解决了这个问题,只是删除了"order": [[0, "desc"]] 行,并在 django 的views.py 一侧排序日期。

【讨论】:

以上是关于如何按日期对 DataTable 列进行排序的主要内容,如果未能解决你的问题,请参考以下文章

按英国日期对 jQuery 数据表进行排序并忽略空单元格

如何使用数据表插件按日期(从最旧到最新)排序列

如何按日期对 DataTables 行进行排序?

golang怎么对日期和时间进行排序

按字符和日期列对数据框进行排序

DataTable 升序排列日期