ExtJS-从表单获取值(基于登录应用程序教程)
我已经创建了带有官方登录应用程序教程的简单应用程序: 应用程序运行良好。但是它缺少任何类型的密码检查,我决定稍微弄乱一下。这里存在一个问题——如何从控制器内部定义的表单中获取值 更准确地说,我想加入“onLoginClick”监听器 视图: 控制器:ExtJS-从表单获取值(基于登录应用程序教程),extjs,Extjs,我已经创建了带有官方登录应用程序教程的简单应用程序: 应用程序运行良好。但是它缺少任何类型的密码检查,我决定稍微弄乱一下。这里存在一个问题——如何从控制器内部定义的表单中获取值 更准确地说,我想加入“onLoginClick”监听器 视图: 控制器: Ext.define('TutorialApp.view.login.LoginController', { extend: 'Ext.app.ViewController', alias: 'controller.login',
Ext.define('TutorialApp.view.login.LoginController', {
extend: 'Ext.app.ViewController',
alias: 'controller.login',
onLoginClick: function () {
// get values here
}
});
在
onLoginClick
函数中,您可以通过me.up('window').down('form').getForm()
访问表单,该函数可用作ajax调用(或表单提交),以验证用户:
onLoginClick: function(me) {
var form = me.up('window').down('form').getForm();
if (form.isValid()) {
form.submit({
url: 'checkcredentials.php', // your url
params: null, // needed for additional params
submitEmptyText: false, // don't post empty text in fields
success: function(form, action) {
Ext.Msg.alert('Success', action.result.msg);
},
failure: function(form, action) {
Ext.Msg.alert('Failed', action.result.msg);
}
});
}
}
所以这一切都是关于函数参数,而不是“这个”。现在它工作得很好。什么是“我”参数按钮组件实例?是的。它指的是单击的按钮。
onLoginClick: function(me) {
var form = me.up('window').down('form').getForm();
if (form.isValid()) {
form.submit({
url: 'checkcredentials.php', // your url
params: null, // needed for additional params
submitEmptyText: false, // don't post empty text in fields
success: function(form, action) {
Ext.Msg.alert('Success', action.result.msg);
},
failure: function(form, action) {
Ext.Msg.alert('Failed', action.result.msg);
}
});
}
}