列名与对应的值是动态改变的,也就是说要展示的列名可能随时改变。
首先选择了默认的列作为显示,在tbar中加入一个按钮弹出所有可能要显示的列名,选择后将对应的列名与值显示在grid中,例如
身份证号码 男性 青年 中年 商人
3424×× 是 否 是 是
1234×× 否 是 否 否
- function createRecordValue(){
- var tempValue = new Array();
- var j = 0;
- tempValue[j] = {name:'UserId'};
- for(var i = 0 ;i < amdValue.length;i++){
- tempValue[++j] = {name: "N"+amdValue[i]};
- tempValue[++j] = {name: "V"+amdValue[i]};
- }
- return tempValue;
- }
-
- function createColumn(){
- var tempColumn = new Array();
- var j = 0;
- tempColumn[j] = {header:'身份证号',dataIndex:'UserId',sortable:true,renderer:getUserInfo};
- for(var i = 0;i < amdValue.length;i++){
- tempColumn[++j] = {header:"N"+amdValue[i],dataIndex:"V"+amdValue[i],id:"V"+amdValue[i],sortable:true};
- }
- return tempColumn;
- }
-
-
- var index = cm.getIndexById("V"+amdValue[i]);
- var str = r[0].get("N"+amdValue[i]);
- cm.setColumnHeader(index,str);
-
-
- grid.reconfigure(store, cm);
function createRecordValue(){ //动态生成recordValue
var tempValue = new Array();
var j = 0;
tempValue[j] = {name:'UserId'};
for(var i = 0 ;i < amdValue.length;i++){
tempValue[++j] = {name: "N"+amdValue[i]}; //列名
tempValue[++j] = {name: "V"+amdValue[i]};//列名对应的值
}
return tempValue;
}
function createColumn(){//动态生成列名,amdValue为要显示的列的数组
var tempColumn = new Array();
var j = 0;
tempColumn[j] = {header:'身份证号',dataIndex:'UserId',sortable:true,renderer:getUserInfo};
for(var i = 0;i < amdValue.length;i++){
tempColumn[++j] = {header:"N"+amdValue[i],dataIndex:"V"+amdValue[i],id:"V"+amdValue[i],sortable:true};
}
return tempColumn;
}
//动态设置列名
var index = cm.getIndexById("V"+amdValue[i]);
var str = r[0].get("N"+amdValue[i]);//r[]后台返回的记录集;amdValue[i]是要显示的列的关键字
cm.setColumnHeader(index,str);
//刷新CM,STORE
grid.reconfigure(store, cm);