在Grid的cm里面定义列的时候使用renderer 属性进行修改日期格式.由于在用.net把List<T>转成json的时候会把日期类型转化成不是常用的格式所以我们需要利用js把他转换过来.
第一步需要把他转换成js认识的Date格式:new Date(parseInt(val.substring(6, val.length - 2)))
第二步再把Date按照你的要求进行转化,我这里是扩展了一个format方法
1: Date.prototype.format = function(format) {
2: var o =
3: {
4: "M+": this.getMonth() + 1, //month
5: "d+": this.getDate(), //day
6: "h+": this.getHours(), //hour
7: "m+": this.getMinutes(), //minute
8: "s+": this.getSeconds(), //second
9: "q+": Math.floor((this.getMonth() + 3) / 3), //quarter
10: "S": this.getMilliseconds() //millisecond
11: }
12:
13: if (/(y+)/.test(format))
14: format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length));
15: for (var k in o)
16: if (new RegExp("(" + k + ")").test(format))
17: format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length));
18: return format;
19: }
下面是具体Grid日期列的定义
1: {dataIndex : 'BillDate',
2: header : '用电日期',
3: hidden : false,
4: renderer : function (val) {
5: return new Date(parseInt(val.substring(6, val.length - 2))).format('yyyy-MM-dd')
6: }
7: ,
8: sortable : false
9: }
posted @ 2009-07-03 13:21 午夜瞎想 阅读(2209) 评论(0) 编辑
下面代码是Ext.grid.GridPanel 的一个tbar的Ext.Button提交删除:
1: var extWindowDepartmentList = new Ext.grid.GridPanel ({autoFill : true,
2: autoHeight : true,
3: cm : new Ext.grid.ColumnModel([new Ext.grid.CheckboxSelectionModel ({singleSelect : false}),//checkbox 列
4: {dataIndex : 'AreaID',header : '地区',hidden : false,sortable : false},
5: {dataIndex : 'Dept_Name',header : '部门',hidden : false,sortable : false},
6: {dataIndex : 'Id',header : 'Id',hidden : true,sortable : false}
7: ]),
8: height : 500,
9: sm : new Ext.grid.CheckboxSelectionModel ({singleSelect : false}) //这里必须有
10: ,
11: store : new Ext.data.Store ({autoLoad : true,id : 'StoreDepartmentList',proxy : new Ext.data.HttpProxy ({url : '/Department/List' }), //数据源
12: reader : new Ext.data.JsonReader ({fields : [{type : 'auto' },{name : 'AreaID', type : 'auto'},{name : 'Dept_Name',type : 'auto'}, {name : 'Id',type : 'auto'}]})
13:
14: })
15:
16: });
posted @ 2009-07-03 13:12 午夜瞎想 阅读(4482) 评论(0) 编辑
下面代码是Ext.grid.GridPanel 的一个tbar的Ext.Button提交删除:
1: tbar : [new Ext.Button ({allowDepress : false,
2: handler : function() {NewHall();},
3: iconCls : 'add',
4: text : '新增'
5: })
6: ,
7: new Ext.Button ({allowDepress : false,
8: handler : function() {
9: Ext.MessageBox.confirm('提示', '确实要删除所选的记录吗?',function (btn){
10: if(btn=='yes'){
11: var row=extWindowDepartmentList.getSelections();
12: var jsonData="";
13: for(var i=0,len=row.length;i<len;i++){
14: var ss = row[i].get("Id"); //这里为Grid数据源的Id列
15: if(i==0)
16: jsonData = jsonData + ss;
17: else
18: jsonData = jsonData + ","+ ss; }
19: var conn = new Ext.data.Connection();
20: conn.request(
21: { url: "/Department/Del", //提交的删除地址
22: params:{strProjects:jsonData},
23: method: 'post',
24: scope: this,
25: callback:function(options,success, response){
26: if(success){
27: Ext.MessageBox.alert("提示","所选记录成功删除!");
28: extWindowDepartmentList.store.reload({params:{start:0, limit:25}}); //重新load数据
29: }
30: else
31: {Ext.MessageBox.alert("提示","所选记录删除失败!");}
32: }
33: })
34: }
35: })
36: ;},
37: iconCls : 'del',
38: text : '删除'
39: })
40: ]
posted @ 2009-07-03 13:06 午夜瞎想 阅读(929) 评论(0) 编辑
