使用格式化程序时如何在jqgrid中以正常格式显示日期

使用格式化程序时如何在jqgrid中以正常格式显示日期,jqgrid,Jqgrid,日期列是使用下面的colmodel创建的。 此列显示每个日期列的值,如0101.0101.7070。 如果删除了formatter:date,则日期是正确的 如何使用formatter:date显示正常的日期值 { "name":"Date", "formatter":"date", "datefmt":"dd.mm.yyyy", "formatoptions":{"newformat":"dd.mm.yyyy"}, "editable":true } 更新。 使用json以相同的dd.mm.

日期列是使用下面的colmodel创建的。 此列显示每个日期列的值,如0101.0101.7070。 如果删除了formatter:date,则日期是正确的

如何使用formatter:date显示正常的日期值

{ "name":"Date",
"formatter":"date",
"datefmt":"dd.mm.yyyy",
"formatoptions":{"newformat":"dd.mm.yyyy"},
"editable":true
}
更新。

使用json以相同的dd.mm.yyyy格式从服务器传递数据,如

{"total":2,"page":1,"records":57,"rows":
[{"id":"9279","cell":["9279","42","","10.08.2011","","","","False"]},
 {"id":"9278","cell":["9278","41","","12.08.2011","","","","False"]},

在建议的“选项”列中使用d.m.y格式可显示正确的日期,但仅使用2年数字。。 我在找4位数的年号。我尝试了d.m.yyyy格式,但它显示了8位年份数字,1位表示月份和日期,显示为01.01.7070


我还尝试将srcformat:“dd.mm.yyy”添加到formatoptions中,但这不会改变错误的结果。

使用d.m.y而不是dd.mm.yy,

将日期显示为您应该使用的数字
j
d
。对于显示月份的数字,应使用
n
m
。如果需要,
d
m
在开头包括
0
填充。“y”表示两位数年份格式,
y
表示四位数年份


因此,您可能需要
srcformat:'d.m.Y'
srcformat:'j.n.Y'

哪种格式有列的输入数据?你能举出相应的例子吗?@Oleg:谢谢。所有数据均为dd.mm.yyyy格式。我更新了问题并添加了源数据示例。谢谢。YOUR建议显示2位数的年份。如何显示4位数的年份数字?谢谢。这似乎奏效了。有些用户可能有不同的日期格式。如何以用户浏览器区域性格式显示日期?@:从中查看有关主题的信息。演示以web浏览器语言(
navigator.language | | navigator.browserLanguage
)显示网格,并允许用户另外动态更改语言。对于实现,只需要在
grid.locale XX.js
文件中进行一些修改,而不需要在jqGrid主代码中进行修改。谢谢。此示例具有硬编码的colmodels,包含每个区域性的硬编码日期格式,没有回退,因此在我的区域性et网格中最初根本不会出现。如何使用相同的colmodel,但在浏览器区域性中显示日期?asp.net控制器ui区域性是根据浏览器区域性设置的。如果强制mvc控制器将日期以浏览器区域性格式发送到jqGrid,并将日期格式也发送到浏览器是合理的。如何从.net mvc控制器返回jqgrid所需的日期格式?@Andrus:有一个小错误。谢谢已经修好了。它应该使用
en-US
日期格式和英文文本,用于“未知”浏览器区域设置,如您的。演示演示1)如何在创建网格之前检测web浏览器语言(
navigator.language | | navigator.browserLanguage
),以及如何使用包含
日期定义的相应
colModel
模板。如果您对
日期
格式感兴趣,您可以简化代码或编写自己的代码。谢谢。控制器可以将本地化格式的日期传递给jqGrid。在这种情况下,只需将一个正确的本地日期格式字符串传递给jgGrid colmodel。如何将正确的日期格式字符串从ASP.NETMVC控制器返回到jqGrid?对于.NET格式的expample,日期格式dd.mm.yyyy应作为d.m.Y传递给jqGrid。NET中是否有函数返回当前线程UI区域性的jqGrid(PHP?)日期格式字符串?