Extjs怎么格式化Grid的日期列

来源:互联网 发布:简单的c语言小游戏 编辑:程序博客网 时间:2024/04/30 19:36

在Grid的cm里面定义列的时候使用renderer 属性进行修改日期格式.由于在用.net把List<T>转成json的时候会把日期类型转化成不是常用的格式所以我们需要利用js把他转换过来.

第一步需要把他转换成js认识的Date格式:new Date(parseInt(val.substring(6, val.length - 2)))

第二步再把Date按照你的要求进行转化,我这里是扩展了一个format方法

 

Date.prototype.format = function(format) {                                                                                var o =  {                                                                                                                         "M+": this.getMonth() + 1, //month                                                                                    "d+": this.getDate(),    //day                                                                                        "h+": this.getHours(),   //hour                                                                                       "m+": this.getMinutes(), //minute                                                                                     "s+": this.getSeconds(), //second                                                                                     "q+": Math.floor((this.getMonth() + 3) / 3), //quarter                                                                 "S": this.getMilliseconds() //millisecond                                                                       }                                                                                                                                                                                                                               if (/(y+)/.test(format))                                                                                                  format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));                       for (var k in o)                                                                                                          if (new RegExp("(" + k + ")").test(format))                                                                           format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));      return format;                                                                                                    }                                                                                                                    

 

下面是具体Grid日期列的定义

{dataIndex : 'BillDate',                                                                     header : '用电日期',                                                                 hidden : false,                                                                      renderer : function (val) {                                                      return new Date(parseInt(val.substring(6, val.length - 2))).format('yyyy-MM-dd')     }                                                                                    ,                                                                                        sortable : false                                                              }                                                                            


 

原创粉丝点击