我有一个sencha应用程序,我正在提交表格。我在我的提交按钮选项卡事件中添加了一个侦听器,并使用ajax提交了表单。
我想要的只是现在使用控制器提交表格。我可以继续进行?
您可以:
Ext.define('Myapp.view.Form', {
extend: 'Ext.form.FormPanel',
xtype: 'my-form',
config: {
items: [
{
xtype: 'textfield'
name: 'field1'
}, {
xtype: 'textfield',
name: 'field2'
}, {
xtype: 'button',
text: 'submit',
handler: function() {
var form = this.getParent();
var values = form.getValues();
form.fireEvent('submitForm', values);
}
]
};
..
Ext.define('Myapp.controller.Main', {
extend: 'Ext.app.Controller',
config: {
refs: {
myForm: 'my-form'
},
control: {
myForm: {
submitForm: 'submitFn'
}
}
},
submitFn: function(values) {
console.log(values);
}
};
希望它有帮助 -
您可以这样做 -
查看:
Ext.define('Myapp.view.Form', {
extend: 'Ext.form.FormPanel',
xtype: 'my-form',
config: {
items: [
{
xtype: 'textfield'
name: 'field1'
}, {
xtype: 'textfield',
name: 'field2'
}, {
xtype: 'button',
text: 'submit',
action: 'submitForm'
]
};
控制器:
Ext.define('Myapp.controller.Main', {
extend: 'Ext.app.Controller',
config: {
refs: {
myForm : 'my-form',
btnFormSubmit: 'my-form button[action=submitForm]'
},
control: {
btnFormSubmit: {
tap: 'onBtnFormSubmitTap'
}
}
},
onBtnFormSubmitTap: function() {
var myForm = this.getMyForm();
var values = myForm.getValues();
myForm.Submit();
console.log(values);
}
};
您可以在提交方法上找到更多帮助,以查看myForm.Submit()
选项:http://docs.sencha.com/touch/2.3.0/#!/api/ext.form.panel-method-submit