ExtJS中的GridPanel动态添加ColumnModel
前短时间一直研究ExtJS来着,看了我做的ExtTest,项目组想试用一下ExtJS,于是决定让我研究一下。表面上很简单,其实Ext的功能强大自不必说,关键其
源码结构太乱了(如果有源码的结构清晰的就好了),实在难读,所以有些问题还是要不断琢磨、试验。
最近遇到个ExtJS的GridPanel的ColumnModel的动态加载的问题,就让我纠结了好几个小时,开始想得复杂了,还以为ColumnModel里边是什么对象来着,
因为我当成字符串传进去有问题,结果其实很简单,直接构造就可以了,代码如下(希望对遇到同样困难的哥们有用):
var colM = "company,id,flyline";
var colMArr = colM.split(",");
var colLength = colMArr.length;
var colMArray = new Array();
for(var i=0; i<colLength; i++) {
colMArray[i] = {header:colMArr[i],width: 75,dataIndex:fieldArray[i]}
//此处的fieldArray[i]是fields的数据
}
//然后colMarray数组即是我们要动态构造的那个ColumnModel的参数,此处的动态的意
//思是colM可以从request中获取,然后用来动态创建header即表头信息,同
//理dataIndex也是一样的
var column = new Ext.grid.ColumnModel(
colMArray
);
//然后GridPanel中的制定cm属性值为column即可
http://blog.csdn.net/yangzhimei/article/details/2942387