ExtJS爲咱們封裝了完整的鍵盤監聽事件,咱們只要調用相應的接口就能完美的實現鍵盤監聽。在全部的鍵盤事件中,按回車鍵提交表單,實現登 錄的功能是咱們最經常使用到的鍵盤監聽事件,下面李壞給出一個實現回車鍵提交表單的案例,但願能給ExtJS的新手朋友們提供幫助。
首先,咱們定義一個表單,代碼以下:api
Ext.define('Demo.view.Viewport', { extend: 'Ext.container.Viewport', items:[{ xtype: 'form', title: 'ExtJS監聽鍵盤事件', width: 500, height: 400, margin: '100 0 0 200', defaults:{ xtype: 'textfield', width: 300, labelWidth: 120, margin: '20 0 0 30' }, items:[{ fieldLabel: '用戶名', name: 'username' },{ fieldLabel: '密 碼', name: 'password', inputType: 'password', //改配置項必須設置爲true,默認false enableKeyEvents: true }], bbar:[{ text: '登陸', action: 'login' },{ text: '重置', action: 'reset' }] }] });
而後,對密碼框設置監聽事件,代碼:app
Ext.define('Demo.controller.Controller', { extend: 'Ext.app.Controller', init:function(){ this.control({ 'viewport > form textfield[name=password]':{ keypress: this.userLogin } }) }, userLogin:function(b,e,eOpts){ //e.getKey()是獲取按鍵的號碼,13表明是回車鍵 if(e.getKey() == 13){ Ext.Msg.alert('提示','您已經按下了回車鍵,能夠在這裏提交表單作登陸操做了... ...') } } });
ExtJS鍵盤事件詳解:
1.首先要將須要監聽的輸入框設置爲容許使用鍵盤事件(enableKeyEvents: true),不然鍵盤事件不可用;
2.使用getKey()方法判斷按鍵是否爲本身設置的按鍵,具體按鍵號碼可參照ExtJS給出的api,而後作具體操做。學習
文章來源:ExtJS學習this