Javascript Sencha Touch 2-使用MVC获取表单值
我的问题与这篇文章中可能的答案有关 我在尝试使用控制器从视图中的窗体检索值时遇到了相同的问题 我当前的错误是uncaughttypeerror:Object#没有方法“getValues” 视图: })) 控制器:Javascript Sencha Touch 2-使用MVC获取表单值,javascript,extjs,sencha-touch,sencha-touch-2,Javascript,Extjs,Sencha Touch,Sencha Touch 2,我的问题与这篇文章中可能的答案有关 我在尝试使用控制器从视图中的窗体检索值时遇到了相同的问题 我当前的错误是uncaughttypeerror:Object#没有方法“getValues” 视图: })) 控制器: Ext.define('App.controller.Login', { extend: 'Ext.app.Controller', requires: [ 'App.view.Login', 'Ext.MessageBox' ], config: { r
Ext.define('App.controller.Login', {
extend: 'Ext.app.Controller',
requires: [
'App.view.Login',
'Ext.MessageBox'
],
config: {
refs: {
loginForm: '#loginForm',
register: '#register',
login: '#login'
},
control: {
register: {
tap: 'loadRegisterView'
},
login: {
tap: 'loginUser'
}
},
history: null
},
loadRegisterView: function(btn, evt) {
/*var firststep = Ext.create('App.view.Register');
Ext.Viewport.setActiveItem(firststep);*/
},
loginUser: function(btn, evt) {
var values = loginForm.getValues();
console.log(values);
}
}))
谢谢
编辑:
所以下面的代码是有效的,但我并不认为每个人都这么做
var form = Ext.getCmp('loginview');
console.log(form.getValues());
其他人都这样做。getLoginView().getValues()。我不明白“this”在错误的范围内,getLoginView甚至会在哪里声明?没有人在他们的代码片段中包含这些信息。下面是另一个示例,在“id”下面的视图中添加xtype: 然后将loginForm的引用替换为:
loginForm: 'loginform',
你的代码会工作的。您所犯的错误是试图访问“字段集”中的“formpanel”方法
xtype: 'loginform',
loginForm: 'loginform',