gpt4 book ai didi

jquery - JQGrid 格式化日期返回错误的日期

转载 作者:行者123 更新时间:2023-12-01 04:24:11 25 4
gpt4 key购买 nike

我正在使用 JQGrid 来显示我的数据(服务器返回 xml)。数据看起来没问题:

<aux>
<sessao>181092</sessao>
<codFuncionario>13574</codFuncionario>
<dataMarcacao class="sql-date">2011-10-15</dataMarcacao>
<sequencia>1</sequencia>
<seqHe/>
<codPagamento/>
<seqOcorrencia>0</seqOcorrencia>
<tipoOcorrencia/>
<diaSemana>SAB</diaSemana>
</aux>
<aux>
<sessao>181092</sessao>
<codFuncionario>13574</codFuncionario>
<dataMarcacao class="sql-date">2011-10-16</dataMarcacao>
<sequencia>1</sequencia>
<seqHe/>
<codPagamento/>
<seqOcorrencia>0</seqOcorrencia>
<tipoOcorrencia/>
<diaSemana>DOM</diaSemana>
<inconsistencias>FALTA DIA</inconsistencias>
</aux>

在网格的初始化中,我设置了格式:

colModel:[ {name: 'dataMarcacao',
index: 'dataMarcacao',
width: 60,
formatter: 'date',
formatoptions: {newformat: 'd/m/Y', datefmt: 'Y-m-d'}},

我不明白的是,网格显示了 15/10/2011 两次,而不是 16/10/2011。

我该如何调试这个?也许是 JQGrid 错误?

我也尝试过:

colModel:[ {name: 'dataMarcacao',
index: 'dataMarcacao',
width: 60,
formatter: 'date',
formatoptions: {newformat: 'Y-m-d', datefmt: 'Y-m-d'}},

这会得到同样的错误结果。

最佳答案

Sérgio Michels 在他自己的问题中回答了这个问题,我在下面清理了它:

这似乎是 PDT 的一个错误。 Firebug 显示时间戳:

  • 日期 {2011 年 10 月 15 日星期六 00:00:00 GMT-0300(巴西官方时间)}

  • 日期 {Sat Oct 15 2011 23:00:00 GMT-0300 (Hora oficial do Brasil)} — 这应该是 10 月 16 日!

  • 日期 {2011 年 10 月 17 日星期一 00:00:00 GMT-0200}

我发现问题与SO和JavaScript对象Date有关。在 Windows 中,当您打开自动更新时钟时间的选项时,“日期”对象将返回您的日期减去夏令时一小时。

为了解决这个问题,我在第 4667 行编辑了 jquery.jqGrid.src.js:

j = timestamp.getUTCDate()

而不是j = timestamp.getDate()

关于jquery - JQGrid 格式化日期返回错误的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7916881/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com