我正在尝试获取此复选框的值
Ext.define('myRoot.myExtApp.myForm', {
extend: 'Ext.form.Panel',
layout: {
type: 'vbox',
align: 'stretch'
},
scope: this,
constructor: function() {
this.callParent(arguments);
this.myFieldSet = Ext.create('Ext.form.FieldSet', {
scope: this,
columnWidth: 0.5,
collapsible: false,
defaultType: 'textfield',
layout: {
type: 'hbox', align: 'stretch'
}
});
this.mySecondForm = Ext.create('myRoot.myExtApp.myForm2', {
scope: this,
listener: this,
margin: '1 3 0 0'
});
this.myCheckBox = Ext.create('Ext.form.Checkbox', {
scope: this,
//id: 'myCheckBox',
boxLabel: 'Active',
name: 'Active',
checked: true,
horizontal: true
});
this.myFieldSet.add(this.mySecondForm);
this.myFieldSet.add(this.myCheckBox);
this.add(this.myFieldSet);
}
});
如您所见,我有另一种形式
Ext.define('myRoot.myExtApp.myForm2', {
我有一个处理程序,它应该从“myForm”获取复选框的值
如何在不使用 Ext.getCmp 的情况下从 Form2 获取我的复选框的值?我知道我可以得到复选框的值,如果我这样做
Ext.getCmp('myCheckBox').getValue();
但使用
this.myCheckBox.getValue();
给我未定义的错误。
更新- 有了 Wared 的建议,我在 myForm2 中尝试了这个
this.temp=Ext.create('myRoot.myExtApp.myForm'), {});
var tempV = this.temp.myCheckBox.getValue();
我能够获得价值,但即使我取消选中该框,我也会获得相同的真实价值