7

テキストフィールド入力機能でボタンクリックを呼び出したい。

items: [
{
    xtype: 'form',
    id: 'myForm',
    items: [
    {
        xtype: 'textfield',
        id: 'myTextField',
        listeners: {
            specialkey: function(f,e){
                if(e.getKey() == e.ENTER){
                    console.log('Spacial Key = Enter'); // It's working
                    // But i wanna click btnSearch button click event
            }
            }
        }
    }
    ],
    buttons: [
        {
            text: 'Search',
            id: 'btnSearch',
            handlers: function(){
                // bla bla
                // bla bla
                // ...
            }
        }
    ]
}
]

var myform = Ext.getCmp('myForm');
myForm.getForm().submit()

動作していますが、btnSubmit.click 関数が動作していません

4

4 に答える 4

2

このコードは機能しています:

    {
                            fieldLabel : 'Password',
                            name : 'j_password',
                            inputType : 'password',
                            allowBlank : false,
                            listeners : {
                                'render' : function(cmp) {
                                    cmp.getEl().on('keypress', function(e) {
                                        if (e.getKey() == e.ENTER) {
                                            submitform();
                                        }
                                    });
                                }
                            }
   }
于 2012-10-31T09:14:41.253 に答える
1

スコープに応じて、これを試すことができます:

Ext.getCmp("btnSearch").handler.call(Ext.getCmp("btnSearch").scope);
于 2012-04-25T13:54:37.830 に答える
1
Ext.getCmp('btnSearch').focus();

I Dont Think It But Its Working For Me :)

Thanks For All

于 2012-04-27T15:34:54.283 に答える
1

doSearch()のようなメソッドを作成し、両方のハンドラーからこのメソッドを呼び出す方が簡単です。

于 2012-04-19T12:34:33.577 に答える