jqGrid – 未应用日期和时间格式
我有一个显示3列的jqGrid,其中一列是日期时间(正在返回的SQL Datetime字段)。 colModel设置如下:
colModel:[ {name:"col1",....,sortable:false}, {name:"col2",....,sortable:false}, {name:"SendTime",index:"SendTime",width:col3width,align:"left",formatter:"datetime",formatoptions:{srcformat:"ISO8601Long",newformat:"LongTime"},xmlmap:"SendTime",sortable:false} ],
从SQL返回的日期采用以下格式:
YYYY-MM-DDTHH:mm:ss
jqGrid中的所有字段都不可排序,SQL ORDER BY
控制返回的数据的顺序。
我想更改返回的日期格式,省略中间的“T” – YYYY-MM-DD HH:mm:ss
。 如果我不能这样做,我会考虑只有格式化的军事时间。 我在colModel设置中尝试了几种格式选项,但只是成功地格式化了日期或时间,但不能同时进行两种格式化。
这需要自定义格式化程序,还是我忽略了jqGrid中的设置? 非常感谢任何帮助。
谢谢! 小号
jqGrid有预定义formatter:"date"
,但没有formatter:"datetime"
(参见文档 )。 因此,您应该修改格式化程序的名称以使其正常工作。
最后一个版本的jqGrid支持YYYY-MM-DDTHH:mm:ss
而不仅仅是YYYY-MM-DD HH:mm:ss
。 因此,您无需在后端进行任何更改。
您应该考虑使用sorttype: "date"
。 如果您使用loadonce: true
或使用datatype: "local"
可能会有所帮助。
您可以使用sql CONVERT
将其格式化,然后将其放入提供网格的数据集中,而不是尝试将jqgrid格式设为日期。 我不知道你在使用什么SQL,但是在SQL Server中:
SELECT CONVERT(VARCHAR(19), GETDATE(), 120)
最终看起来像
2013-05-21 10:18:39
有关格式的更多信息