如何在jqgrid中对datetime列进行排序

时间:2018-07-16 06:52:47

标签: jqgrid

我在jqGrid中的日期时间格式列之一是以下格式:

2030年11月1日,星期五11:59 pm。

如何在下面的colModel中实现默认的升序排序?

      colModel: [
            { name: 'startDate', width: 30},            
        ]

谢谢。

1 个答案:

答案 0 :(得分:1)

您的演示使用srcformat: "ISO8601Long",这表示您使用的是"2030-11-01T23:59:00Z"之类的inpuf数据格式,而不是"1 November 2030, Fri 11:59pm"

jqGrid可以安全地分析仅包含数字的输入日期。无法解析包含Fri之类的文本的输入。建议您更改输入数据的格式。仅当您确实无法更改输入数据的格式时,才可以通过定义为函数的用法sorttype来解决问题

{
    name: 'startDate', width: 60,
    sorttype: function (cellValue) {
        return moment(cellValue, "D MMMM YYYY, ddd h:mm a").format();
    }
}

以上代码使用momentjs解析日期并将其替换为ISO 8601日期格式。在排序过程中,jqGrid将使用ISO日期而不是原始日期。