Extjs4.1 checkboxgroup获取数据库值设置 选中

最近在extjs4.1升级,升级以后出现了一些问题:显著就是checkboxgroup和radiogroup的取值和设置值的问题,在这里列出了例子给大家参考。

//将后台数据转换为'1'数组

function transtyle(v){

   var arr=v.split(',');

var c=new Array();

var k = ['1','2','3','4','5'];

for(var i=0;i<arr.length;i++){

arr[i].replace(' ','');

for(var j=1;j<=5;j++){

if(j==arr[i]){

c[i] = k[j-1];

}

}

}

return c;

}

//已通过科目

var passedCourseGroup = new Ext.form.CheckboxGroup({

   columns: 5,

   fieldLabel: '已通过科目',

   // width:380,

           id:'passedCourse',

  items: [{

       name: 'passedCourse',

       boxLabel: '证券市场基础知识',

       inputValue: '1'

   }, {

       name: 'passedCourse',

       boxLabel: '证券交易',

       inputValue: '2'

   }, {

       name: 'passedCourse',

       boxLabel: '证券投资分析',

       inputValue: '3'

   }, {

       name: 'passedCourse',

       boxLabel: '证券投资基金',

       inputValue: '4'

   }, {

       name: 'passedCourse',

       boxLabel: '发行与承销',

       inputValue: '5'

   }]

});

var v='${csManageTO.csQulificateTO.passedCourse}';

var  c = transtyle(v);

passedCourseGroup.setValue({

passedCourse: c

});

这个方式差不多是可以设置选中的。

具体解释就不多说了,相信各位应该能理解。

//获取checkbox的值,并拼成字符串

function getCheckgroupId(checkgroupId){

  var passedCourseArr=Ext.getCmp(checkgroupId).getChecked();//这个可以取到选到选中的数组

  var passedCourseStr = '';

                   var passedCourseLen=passedCourseArr.length;

  for(var i=0;i<passedCourseLen;i++){

  if(i==passedCourseLen-1){

  passedCourseStr+=passedCourseArr[i].inputValue;

  }else{

  passedCourseStr+=passedCourseArr[i].inputValue+', ';

  }

  }

  return passedCourseStr;

}

var

相关推荐