【发布时间】:2016-05-16 15:57:20
【问题描述】:
我的日期是标准 MySql 数据库 yyyy/mm/dd 格式,我在表中重新格式化为英国格式 dd/mm/yyyy,但后来我发现 jquery bootgrid 表没有正确排序,毫无疑问是因为它期待 mm/dd/yyyy 美国格式。
有解决办法吗?我是否需要在表格中格式化为原始日期,然后使用 bootgrid 格式化程序格式化为英国日期?
【问题讨论】:
标签: jquery-bootgrid
我的日期是标准 MySql 数据库 yyyy/mm/dd 格式,我在表中重新格式化为英国格式 dd/mm/yyyy,但后来我发现 jquery bootgrid 表没有正确排序,毫无疑问是因为它期待 mm/dd/yyyy 美国格式。
有解决办法吗?我是否需要在表格中格式化为原始日期,然后使用 bootgrid 格式化程序格式化为英国日期?
【问题讨论】:
标签: jquery-bootgrid
以 YYYYMMDD 格式存储您的日期并使用 Bootgrid 格式化程序,如下所示:
$("#grid-basic").bootgrid(
{
formatters:
{
"dateformatter": function (column, row)
{
var strDate = row.mydate.substring(6, 9) + "/" + row.mydate.substring(4, 6) + "/" + row.mydate.substring(0, 4);
return strDate;
}
}
});
只需记住将 data-formatter="dateformatter" 属性添加到您的日期列。
我知道的唯一禁忌是默认搜索功能找不到带有格式化程序的 Bootgrid 列。希望有人为此发布解决方案。
【讨论】:
我在表头中引用了来自http://momentjs.com set data-formatter="ukdate" 的 moment.js,并使用了以下 Bootgrid 格式化程序:
formatters: {
"ukdate": function(column, row)
{
return moment.utc(row[column.id]).format('DD-MM-YYYY HH:mm');
}
}
我发现通过设置 data-order="desc" 进行排序时,日期是唯一设置了数据顺序但不是设置了数据顺序的多列的日期。
【讨论】: