Ext中Grid显示Date类型数据的方法

有一个类Log,里面有个Date类型属性oprTms,使用JSON-LIB将Log对象转换成JSON返回客户端在GridPanel中显示,发现该列显示的值为[object Object]。使用firebug观察回传到客户端的数据为:

"oprTms":{"date":15,"day":1,"hours"
:18,"minutes":32,"month":2,"seconds":26,"time":1268649146000,"timezoneOffset":-480,"year":110}
在网上找到的解决办法如下(http://www.busfly.cn/post/ext-grid-json-date.html):
自定义一个Javascript函数:
//format是date的日期格式
function renderDate(format) {
	return function(v) {
		var JsonDateValue;
		if(Ext.isEmpty(v)) {
			return "";
		} else if(Ext.isEmpty(v.time)) {
			JsonDateValue = new Date(v);
		} else {
			JsonDateValue = new Date(v.time);
		}
		return JsonDateValue.format(format || 'Y-m-d H:i:s');
	}
}
在grid的ColumnModel定义中,为日期列添加:
{header:'操作时间',dataIndex:'oprTms',renderer:renderDate('Y-m-d H:i:s')}
OK。

 
 
 
posted @ 2010-04-03 18:19  诚实小郎君  阅读(796)  评论(0编辑  收藏  举报