Мой вопрос с в связи с возможным ответом на этот пост Sencha Touch 2 - How to get form values?Сенча Touch 2 - Получить значения формы с помощью MVC
Im имея тот же вопрос пытается извлечь значения из формы в представлении с помощью контроллера.
Моя текущая ошибка Uncaught TypeError: Объект # имеет нет метод 'GetValues'
Вид:
Ext.define("App.view.Login", {
extend: 'Ext.form.Panel',
requires: [
'Ext.field.Password'
],
id: 'loginview',
config: {
items: [{
xtype: 'titlebar',
title: 'Login',
docked: 'top'
},
{
xtype: 'fieldset',
id: 'loginForm',
defaults: {
required: true
},
items: [{
items: [{
xtype: 'textfield',
name: 'username',
label: 'Username:'
},
{
xtype: 'passwordfield',
name: 'password',
label: 'Password:'
}]
}]
},
{
xtype: 'toolbar',
layout: {
pack: 'center'
}, // layout
ui: 'plain',
items: [{
xtype: 'button',
text: 'Register',
id: 'register',
ui: 'action',
}, {
xtype: 'button',
text: 'Login',
id: 'login',
ui: 'confirm',
}] // items (toolbar)
}]
}
});
Контроллер:
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);
}
});
Благодаря
Edit: Так ниже код работает, но его не так, как я вижу все это делать.
var form = Ext.getCmp('loginview');
console.log(form.getValues());
Все остальные функции this.getLoginView(). GetValues (); , Я не понимаю, что «это» находится в неправильном объеме и где будет объявлен getLoginView? Никто никогда не включает эту информацию в свои фрагменты. Вот еще один пример Sencha Touch 2 - How to get form values?