jqueryjqgrid中的日期格式

jqueryjqgrid中的日期格式,jquery,date,jqgrid,date-format,Jquery,Date,Jqgrid,Date Format,我有一个日期字段,在JSON中显示为“August,13 2012 12:58:29”,我使用的是jqGrid 3.7.2,无法升级。我需要在colModel中进行哪些调整,才能使客户端的日期格式为“08/14/2012” 我尝试使用:格式化程序:“日期”,格式化选项:{srcformat:'',newformat:'} 但是我不能为srcformat和newformat找到正确的组合。结果总是很奇怪 感谢您使用非常糟糕的日期格式“August,132012:58:29”作为jqGrid的输入。

我有一个日期字段,在JSON中显示为“August,13 2012 12:58:29”,我使用的是jqGrid 3.7.2,无法升级。我需要在colModel中进行哪些调整,才能使客户端的日期格式为“08/14/2012”

我尝试使用:格式化程序:“日期”,格式化选项:{srcformat:'',newformat:'}

但是我不能为srcformat和newformat找到正确的组合。结果总是很奇怪


感谢您使用非常糟糕的日期格式
“August,132012:58:29”
作为jqGrid的输入。建议在服务器和客户端之间发送的好的日期格式是一些独立于语言和区域设置的格式,如
2012-08-13T15:58:29Z
(请参阅)

另一个问题是jqGrid 3.7.2不支持
'F'
格式(或实现中的bug)。您可以将的代码和的代码与jqGrid 3.7.2的相应代码进行比较。如果您要更新jqGrid 3.7.2副本中的函数代码,您的问题应该得到解决(参见一些我的bug报告,例如:和)


注:如果你想在将来收到关于你的问题的答案,你应该开始回答。只需点击一下你需要做的事情。

我已经通过手动修改jquery.jqgrid.src.js(4.5.2)解决了日期字段的NaN/NaN/NaN问题。 在我的例子中,json响应将以“ISO1860Long”格式返回日期。它在4.1.2 jqgrid版本之前一直有效

搜索“parseDate”函数;转到以下位置后的行:

if( opts.masks.hasOwnProperty(format) ) { format = opts.masks[format]; }
if(date && date != null) {
如果选中,则添加以下内容:

if(date.constructor === Number) {
  if(String(format).toLowerCase() == "u") {
    date = date*1000;
  }
  timestamp = new Date(date);
} else
在现有的

if( !isNaN( date - 0 ) && String(format).toLowerCase() === "u") {

如果需要,您可以自己将更改翻译到jquery.jqgrid.min.js

谢谢您的建议。不幸的是,我无法控制传入的日期,因为这是一个远程web服务调用,而不是我的数据,所以我只需要处理这些更改。我将研究您给出的建议。谢谢