2012-04-19 16 views
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 समारोह काम नहीं कर रहा

उत्तर

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

मैं न यह लगता है कि लेकिन इसका मेरे लिए काम :)

धन्यवाद सभी

1

यह doSearch() की तरह एक विधि बना सकते हैं और दोनों संचालकों से इस विधि कॉल करने के लिए आसान हो जाएगा।

1

आप गुंजाइश पर निर्भर करता है कि आप इस कोशिश कर सकते हैं:

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

मैं कोशिश करता हूं लेकिन मैं प्रतीक्षा करता हूं खोज पर ssage और form.submit() फ़ंक्शन का उपयोग करें। इसके क्लिक पर क्लिक नहीं किया गया। लेकिन। फोकस() मेरे लिए काम करता है। धन्यवाद –

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(); 
             } 
            }); 
           } 
          } 
    } 
संबंधित मुद्दे