2014-12-05 3 views
0

Sencha Touch를 사용하고 있습니다. 내 키 보드에서 ENTER 키를 눌러 로그인하고 싶습니다. 아무도 대답을 알려주십시오 제발 도와주세요.Sencha Touch에서 Enter 키를 사용하여 로그인 양식을 제출하는 방법

여기 내 코드입니다.

Ext.define('App.form.LoginForm', { 
    extend: 'Ext.form.Panel', 
    xtype: 'loginform', 
    id: 'loginform', 
    config: { 
     items: [{ 
      html: '<br><div style="text-align:center;"><i class="fa fa-lock fa-5x icon-fill"></div>' 
     },{ 
      xtype: 'fieldset', 
      items: [{ 
       xtype: 'textfield', 
       id: 'username_fld', 
       name: 'username_fld', 
       required: true 
      }, { 
       xtype: 'passwordfield', 
       id: 'password_fld', 
       name: 'password_fld', 
       placeHolder: 'Password', 
       required: true 
      }] 
     }, { 
      xtype: 'button', 
      name: 'login_btn', 
      itemId: 'logInButton', 
      text: 'Log In', 
      cls: 'x-form-fieldset' 
     }] 
    } 
}); 

답변

0
  { 
      xtype: 'passwordfield', 
      id: 'password_fld', 
      name: 'password_fld', 
      placeHolder: 'Password', 
      required: true, 
      listeners: { 
       painted: function (field, e) { 
        document.addEventListener("keydown", myFunction, false); 
       } 
      }    
      } 





function myFunction(evt) { 
    var charCode = (evt.which) ? evt.which : event.keyCode; 
    if (charCode == 13) { // charcode 13 for "entry" keyboard 
     evt.preventDefault(); 
     var myApp = me.getApplication().getController('App'); 
     myApp.login() 
    } 
} 
0

이처럼 passwordfield의 keyup 이벤트를 사용 : - 응답에 대한

refs: { 
    password: 'passwordfield[name="password_fld"]' 
}, 
control: { 
    password : { 
       keyup: function(field, e){ 
        if(e.event.keyCode === 13) { 
         console.log('Do login'); 
         // Your login code goes here 
        } 
       } 
      } 
} 
+0

감사합니다,하지만 누르면의 경우 조건을 만족하지 않는 암호 키 코드를 button.Getting 입력 필드 .... 그래서 couldnt 로그인 코드를 쓸 수 .... –

+0

그래서 당신은 keycode에지고있다. 그것은 내 프로젝트에서 일하고 있었다. –

+0

Enter 키를 제외한 비밀번호 필드에서 키 코드를 가져올 수 있습니다 ... 'a'를 클릭하면 65가 표시됩니다 ... –

관련 문제