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

doSearch()创建类似的方法并从两个处理程序调用此方法会更容易。

于 2012-04-19T12:34:33.577 回答
1

根据您的范围,您可以尝试以下操作:

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

我不这么认为,但它对我有用:)

谢谢大家

于 2012-04-27T15:34:54.283 回答