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
        }

  这样就可以显示正常显示日期数据了数据。

  这个方法只是我自己摸索出来的,网上还有其他不同的做法,这里算是对自己的总结吧,欢迎大家批评指正。

  谢谢!

 

 

posted @ 2009-12-23 17:33  Newbie_On_His_Way  阅读(2059)  评论(0编辑  收藏  举报