在无线电现场检查时召集事件

时间:2012-05-17 09:43:42

标签: sencha-touch extjs sencha-touch-2 radio

我正在创建一个无线电场,我需要在检查无线电场时创建一个事件。

正在使用的代码是:

items : [ {
            xtype : 'toolbar',
            docked : 'top',
            //id:'popupTitle',
            title : 'Send options',
            height : 30
        }, {
            xtype : 'radiofield',
            //  ui:'plain',
            id : 'r1',
            name : 'sendDoc',
            value : 'Default',
            label : 'Default',
            labelWidth : '50%',
            checked : true,
            //baseCls: 'x-plain',

            listeners : {
                check : function() {
                    var rad = Ext.getCmp('r1');
                    if (rad.isChecked()) {
                    }
                }

            }
        }, 
        {
            xtype : 'radiofield',
            name : 'sendDoc',
            id : 'r2',
            value : 'Source Workstep',
            label : 'Source Workstep',
            labelWidth : '50%',
            listeners : {
                check : function() {
                    var rad2 = Ext.getCmp('r2');
                    if (rad2.isChecked())   {
                        //alert("hi");
                        if (!this.workstepOverlay) {
                        this.workstepOverlay = Ext.Viewport.add({
                            xtype : 'workstepOverlay'
                        });
                        this.workstepOverlay.show();
                    }

                    }

                }

            }
        } ]

但这似乎没有用。

我收到一条错误,上面写着“请求的值不是对象的键”

我做错了什么?

2 个答案:

答案 0 :(得分:1)

收听check事件。

  

选中复选框后触发。

...
listeners : { 
   check : function( radioFld, event, obj) {
         console.log(radioFld.isChecked());
   }
}
...

答案 1 :(得分:0)

如果事件被触发,请尝试访问您的无线电话:

check( radiofield, event, opts ){
    if(radiofield.isChecked()){

    }
}

希望这有帮助