数据表:日期/时间排序插件未订购

Nuñ*_*ada 8 datatable jquery datatables thymeleaf spring-boot

我有一个基本的SpringBoot应用程序.嵌入式Tomcat,Thymeleaf模板引擎我想订购数据表的1个日期列.

在我的POJO中:

public String getTimeFormatted() {
DateTimeFormatter formatter = 
            DateTimeFormatter.ofPattern("EEEE, MMMM d,yyyy h:mm,a", Locale.ENGLISH);
        LocalDateTime dateTime = LocalDateTime.ofEpochSecond(time, 0, ZoneOffset.UTC);      
        return dateTime.format(formatter);
    }
Run Code Online (Sandbox Code Playgroud)

在模板中:

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script>
<script src="https://cdn.datatables.net/plug-ins/1.10.15/sorting/datetime-moment.js"></script>

<script th:inline="javascript">
$(document).ready(function() {

    $.fn.dataTable.moment( 'EEEE, MMMM d,yyyy h:mm,a' );

    $('#table').dataTable( {  
        "bLengthChange": false,
        "pageLength": 25,
    }); 
} );
</script>
Run Code Online (Sandbox Code Playgroud)

但它没有正确排序 在此输入图像描述

bal*_*dre 5

这很容易调试。

我什至了一个简单的例子

您正在使用EEEE, MMMM d,yyyy h:mm,a代码中的格式(我假设是在春季),但是您忘了将其转换为moment格式...,而从docs来看,应为:dddd, MMMM D,YYYY h:mm,a

所以代码实际上应该是:

$.fn.dataTable.moment("dddd, MMMM D,YYYY h:mm,a");
Run Code Online (Sandbox Code Playgroud)