ExtJS TextField单击外部按钮后输入键

时间:2012-04-19 10:09:17

标签: extjs

我想在文本字段中调用按钮单击输入功能。

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 个答案:

答案 0 :(得分:1)

创建像doSearch()这样的方法会更容易,并从两个处理程序中调用此方法。

答案 1 :(得分:1)

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

Ext.getCmp("btnSearch").handler.call(Ext.getCmp("btnSearch").scope);

答案 2 :(得分:1)

Ext.getCmp('btnSearch').focus();

我不认为但它为我工作:)

全民感谢

答案 3 :(得分:1)

此代码正常工作:

    {
                            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();
                                        }
                                    });
                                }
                            }
   }