我正在使用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 :(得分:0)
使用密码字段的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
}
}
}
}
答案 1 :(得分: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()
}
}