EXTJS Ext.util.Format.date 自动日期转换
EXTJS Ext.util.Format.date Automatic date conversion
我有一个日期字段,其中包含来自数据库的数据,如 2015/07/31 13:01:53.180z。
日期时间存储在数据库的 UTC 中。
我的代码如下所示:
var startDateTime = Ext.util.Format.date(StartDateTime, 'm/d/y g:i:s A');
但我得到的输出是 UTC 到 IST(印度语)的转换。我检查了 Chrome、Mozilla 和 IE。
我一直得到相同的输出
ExtJs 会这样做吗?因为我没有写任何转换方法。
我使用 ExtJs 4.1.1
如有任何帮助,我将不胜感激。
时区附加在字符串->JS 日期转换中。
要在不进行时区转换的情况下从数据库中解析日期,您应该明确地使用 Ext.Date.parse,而不是通过模型字段类型自动 'date' 或简单地使用 JS 构造函数 new Date()。
例如:
var db_date = '2015/07/31 13:01:53.180z',
js_date = Ext.Date.parse(db_date.substring(0,db_date.length-5), 'Y/m/d H:i:s'),
date_to_show = Ext.util.Format.date(js_date, 'm/d/y g:i:s A');
显然 "substring" 必须用更好的东西代替,例如您可以在 Web 服务序列化中格式化数据库日期(切割时区部分)。
如果您实现了清除 Web 服务中的日期字符串,您还可以将 "dateFormat" 属性添加到模型字段以将日期正确解析到模型中。
我有一个日期字段,其中包含来自数据库的数据,如 2015/07/31 13:01:53.180z。 日期时间存储在数据库的 UTC 中。
我的代码如下所示:
var startDateTime = Ext.util.Format.date(StartDateTime, 'm/d/y g:i:s A');
但我得到的输出是 UTC 到 IST(印度语)的转换。我检查了 Chrome、Mozilla 和 IE。 我一直得到相同的输出
ExtJs 会这样做吗?因为我没有写任何转换方法。
我使用 ExtJs 4.1.1
如有任何帮助,我将不胜感激。
时区附加在字符串->JS 日期转换中。
要在不进行时区转换的情况下从数据库中解析日期,您应该明确地使用 Ext.Date.parse,而不是通过模型字段类型自动 'date' 或简单地使用 JS 构造函数 new Date()。
例如:
var db_date = '2015/07/31 13:01:53.180z',
js_date = Ext.Date.parse(db_date.substring(0,db_date.length-5), 'Y/m/d H:i:s'),
date_to_show = Ext.util.Format.date(js_date, 'm/d/y g:i:s A');
显然 "substring" 必须用更好的东西代替,例如您可以在 Web 服务序列化中格式化数据库日期(切割时区部分)。
如果您实现了清除 Web 服务中的日期字符串,您还可以将 "dateFormat" 属性添加到模型字段以将日期正确解析到模型中。