//适合extjs 5.0
var cb_open = new Ext.form.Checkbox({
id: "isOpen",
name: "isOpen",
fieldLabel: '复选开关',
boxLabel: '关闭(初始值)',
margin: '5 0 0 10',
hideTrigger: true,
checked: false,
inputValue: '0',
listeners: {
click: {//设置点击事件
element: 'el',
fn: function (obj, o2, o3, o4, o5) {
var thisObj = Ext.getCmp(this.id);
var isCheck = thisObj.getValue();
if (isCheck) {
thisObj.setCheck();
}
else {
thisObj.setUnCheck();
}
}
}
},
//增加三个扩展方法
//设置文字
setText: function (value, textStr) {
var thisObj = Ext.getCmp(this.id);
thisObj.setValue(value);
thisObj.boxLabel = textStr;
thisObj.getEl().down('.x-form-cb-label').update(textStr);//这句导致界面更新必须加
},
//封装上面的方法设置选中
setCheck: function () {
var thisObj = Ext.getCmp(this.id);
thisObj.setText(true, '开启');
},
//封装上面的方法设置不选中
setUnCheck: function () {
var thisObj = Ext.getCmp(this.id);
thisObj.setText(false, '关闭');
}
});
//使用方法
Ext.getCmp('isOpen').setCheck();
Ext.getCmp('isOpen').setUnCheck();
转载于:https://my.oschina.net/raddleoj/blog/357984