Обработка кнопок ExtJS - PullRequest
       21

Обработка кнопок ExtJS

0 голосов
/ 23 августа 2011

Каков наилучший способ добавить функцию к кнопке?(специально определено)

Грязный пример:

form.Login= function(config){
if ( typeof config !== 'object' ) { config = {}; }



    var tbarBottom = {
    xtype: 'toolbar',
    dock: 'bottom',
    items: [{
        xtype:'spacer'
    },{
        text: 'Reset',
        handler:function(button,event){
            console.log(this); // ehh... how do I this.reset() from here? 
                              //( "this" is the buttons scope, not the forms scope )

        }]
    }
    config.dockedItems= [tbarBottom];
    form.Login.superclass.constructor.call(this,config);

Ext.extend( form.Login, Ext.form.FormPanel,{

reset: function() {
    this.reset()// I want to call this function
}

});

Я видел примеры в ExtJs 4 с использованием

this.up('form').reset();

, и я также могу

this.ownerCt.ownerCt.reset()

Но оба они чувствуют себя очень неловко.(.up гораздо меньше, хотя, поскольку я играю с сенсорным, я не думаю, что "вверх" вариант)

1 Ответ

2 голосов
/ 23 августа 2011

Используйте это

{
    text: 'Reset',
    handler:function(button,event){
    console.log(this); // ehh... how do I this.reset() from here? 
                              //( "this" is the buttons scope, not the forms scope )
    },
   scope : this
} 
...