Extjs4 中date时间格式的问题

在Grid中显示时间,后台传过来的是date格式的数据(PHP date(‘Y-m-d‘, time()),一般在Ext model中定义数据的类型和格式:

{name:‘birth‘, type:‘date‘},

view层:

{ header: ‘生日‘, dataIndex: ‘birth‘, editor:{ xtype: ‘datefield‘, format : ‘Y-m-d‘}}

但这是个可编辑的grid row,通过搜索得知,必须自己定义renderer,试过:

renderer:function(value) {
     if(value instanceof Date) {
      return new Date(value).format(‘Y-m-d‘);
    } else {
      return value;
    }
}

在显示和编辑时候显示的是 2014-07-15这样的,但是在编辑状态为空,编辑完后显示为“Tue Jul 15 2014 08:00:00 GMT+0800 (中国标准时间)”,显然不符合。

再搜索,原来还有个util的类,专门是格式化数据的“Ext.util.Format”, view层代码修改为:

{ header: ‘生日‘, dataIndex: ‘birth‘, editor:{ xtype: ‘datefield‘, format : ‘Y-m-d‘}, renderer:new Ext.util.Format.dateRenderer(‘Y-m-d‘)}

即可正确显示‘Y-m-d’格式的时间。

Extjs4 中date时间格式的问题,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。