Json化后的时间类型数据在Extjs Grid中的显示问题
从数据库中取出来的时间类型的数据,Json化以后会出现形如:\/date(125465701)\/ 样子的数据,这样的数据在Grid中无法直接显示成合法的日期形式。这个要在前台处理一下。首先定义个函数:
//转换为可显示日期
function Todate(v) {
if(v == null)
{
return null;
}
var d = new Date();
var str = v.toString();
var str1 = str.replace("/Date(", "");
var str2 = str1.replace(")/", "");
var dd = parseInt(str2);
d.setTime(dd); return d;
};
在Store里面只对日期这个选项做如下设置:
{ name: 'TXRQ', type: 'date', dateFormat: 'Y-m-d', convert: Todate }
在ColumnModel中要做如下设置:
{ header: '填写日期',
dataIndex: 'TXRQ',
renderer: Ext.util.Format.dateRenderer('Y年m月d日'),
sortable: true,
width: 95
}
这样就可以显示正常显示日期数据了数据。
这个方法只是我自己摸索出来的,网上还有其他不同的做法,这里算是对自己的总结吧,欢迎大家批评指正。
谢谢!