首页 > 代码库 > ExtJs 4.0 动态生成Grid
ExtJs 4.0 动态生成Grid
每写一篇文章都是一部血泪史啊。最近公司的需求要是使用到Ext的动态生成Grid,公司用的是4.0,由于版本问题在网上找了很多都不实用,所以自己研究了下。
现在给大家分享出来。
后台Json:
callback内容:
1 callback : function(options, success, response) { 2 alert(response.responseText); 3 var r = Ext.decode(response.responseText); 4 if ("3"==r.state) { 5 var columnModel = []; 6 var columns = []; 7 for(var i=0;i<r.responseResult.columnList.length;i++){//因为后台返回的类型为字符串,要将字符串转换成Object 8 var v = r.responseResult.columnList[i]; 9 var obj = new Object();10 obj = {text:v,dataIndex:v,width:120};11 columnModel[i]=obj;12 columns[i] = v;13 }14 15 var datas = [];16 for(var i=0;i<r.responseResult.dataList.length;i++){//转换成Object17 var v = r.responseResult.dataList[i];18 var sp = v.split(",");19 var objData = http://www.mamicode.com/new Object();20 for(var j=0;j<sp.length;j++){21 var columnName = sp[j].substring(0,sp[j].indexOf(":"));22 var columnData = http://www.mamicode.com/sp[j].substring(sp[j].indexOf(":")+1,sp[j].length);23 objData[columnName] = columnData;24 }25 datas[i]=objData;26 }27 var store = Ext.create(‘Ext.data.Store‘, {28 fields : columns,29 data:datas30 });31 //注意columns和columnModel必须为数组形式的Object,如果是数组形式的字符串会报错!32 Ext.getCmp("syDataSourceGird").reconfigure(store,columnModel); 33 return ;34 } 35 Ext.create(‘global.RespWin‘, {stateOkText : r.msg}).stateError();36 }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。