Extjs3.0 checkboxGroup 动态添加item实现思路


Extjs3.0 中的CheckboxGroup默认不能动态添加item 。虽然它继承了Ext.form.Field,但是却类似于容器 。
CheckboxGroup配置中的items处理生成一个对应的panel,该处理过程只有一次,所以很难对CheckboxGroup进行动态添加 。

如需要数据动态创建,试着创建整个CheckboxGroup,而不是动态添加item 。
复制代码 代码如下:

var unitColumns=[];
for(var i = 0;i < records.length;i++){
unitColumns.push({
boxLabel: records[i].data.A11,
name: records[i].data.A11,
inputValue: records[i].data.A1,
checked: false
});
}
var itemsGroup = new Ext.form.CheckboxGroup({
id:unitItems,
bodyStyle:background-color: transparent;margin-top:10px;,
fieldLabel: 选项,
columns: 2,
items: unitColumns
});
Ext.getCmp(OptionsSet).add(itemsGroup);
Ext.getCmp(OptionsSet).doLayout();