【问题标题】:Convert DateTime.Parse() format to date and time in jqgrid将 DateTime.Parse() 格式转换为 jqgrid 中的日期和时间
【发布时间】:2012-12-31 22:43:07
【问题描述】:

我正在使用jqGrid 4.4.1C#.net。我正在使用DateTime.Parse()sqlserver 转换日期字段。它以这种格式发送到jqgrid

1/5/2012 4:05:00 PM

我希望它以相同的格式显示,但我的 formatoptions 一定不正确,因为这个值:

4/18/2007 11:21:00 AM

这样显示

28/11/2010

这是我的formatoptions 设置:

{ "srcformat": "n/j/Y g:i:s A", "newformat": "n/j/Y g:i:s A" }

我还有其他日期字段可以正确显示 4/18/20104/18/2010 使用:

{ "srcformat": "m/d/Y", "newformat": "m/d/Y" }

我猜这是srcformat 的问题,但我尝试过的许多组合都不起作用。

日、月或小时没有前导零,AM/PM 采用 12 小时制,我应该使用正确的 srcformat 是什么?

由于日期可以很好地使用这种方法,我更喜欢转换 jqgrid 中的格式以避免在日期中包含时间时进行特殊解析。

编辑:

如果我不尝试将字段格式化为日期,它会正确显示日期,但我无法按该字段排序,因为它没有被排序为日期。

【问题讨论】:

  • 能不能提前把字符串格式化成你喜欢的格式,然后以字符串格式发送到jqGrid?
  • 必须将日期转换为json 字符串,以便jqgrid 使用它。我可以在将其更改为字符串之前更改格式,但我不想破坏网格中的所有其他日期。如果 DateTime.Parse() 没有创建正确的格式,我应该使用什么格式?

标签: c# javascript sql-server jqgrid


【解决方案1】:

原来这不是字符串格式的问题,而是我如何传递该格式的问题。我没有将formatoptions 作为对象传递,而是将其作为字符串传递。进行更改后,我的格式将按预期工作。

【讨论】:

    【解决方案2】:

    试试

    { "srcformat" : "m/d/Y h:i:s A", "newformat" : "n/j/Y g:i:s A" }
    

    【讨论】:

    • 我已经尝试过这种组合。另外,由于我的月份没有前导零,我不能使用m(与dh 相同)。
    猜你喜欢
    • 2016-11-26
    • 1970-01-01
    • 2015-10-25
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-03
    相关资源
    最近更新 更多