在下面的示例中,当我们单击按钮时,所有表单数据(包括KEY-VALUE
)都将传递给 php 文件以保存在数据库中。抓取KEY-VALUE
是由var form = this.up('form').getForm();
语句完成的。
更新 3
Ext.define ('Mycomp.model.MyClass',{
extend: 'Ext.data.Model',
fields:['textfieldone']
});
==================================================== =======================
更新 2
当用户单击一个按钮时,我会显示具有一个文本字段和一个按钮的视图(如以下代码所示)。用户将输入一些值并单击按钮,用户在文本字段中输入的值应保存在数据库中(Store
有指向 PHP 代码路径的链接)
控制器
Ext.define('Mycomp.controller.MyClass',{
extend: 'Ext.app.Controller',
stores:['MyClass'],
models:['MyClass'],
views:['MyClassView'],
init: function(){
this.control({
'myclassview button[action=save]': {
click: this.myMethod
}
});
},
myMethod: function(button,record) {
var win = button.up('window'),
form = win.down('form'),
record = form.getForm().getRecord(),
values = form.getForm().getValues();
console.log (values);
console.log (record);
record.getRecord().set(values);
win.close();
this.this.getMyClassStore().sync();
}
});
看法
Ext.define('Mycomp.view.user.MyClassView', {
extend: 'Ext.window.Window',
alias: 'widget.myclassview',
initComponent: function() {
this.items = [
{
xtype: 'form',
items: [
{
xtype: 'textfield',
name : 'textfieldone',
fieldLabel: 'Contact Person Name'
}
]
}
];
this.buttons = [
{
text: 'Save',
name:'save',
action: 'save'
}
];
this.callParent(arguments);
}
});
店铺
Ext.define('Mycomp.store.Myclass',{
extend:'Ext.data.Store',
model:'App.model.Myclass',
proxy: {
actionMethods : {
create : 'POST'
},
type: 'ajax',
url : '/savetodb.php'
}
});
==================================================== ==============================
更新 1
.... this.buttons = [
{
text: 'Save',
action: 'save'
}, ...
店铺
Ext.define('Mycomp.store.Myclass',{
extend:'Ext.data.Store',
model:'App.model.Myclass',
proxy: {
actionMethods : {
create : 'POST'
},
type: 'ajax',
url : '/savetodb.php'
}
});
控制器
this.control({
'mycalssform button[action=save]': {
click: this.myMethod
}
});
},
myMethod: function(button, record) {
var win = button.up('window'),
form = win.down('form'),
record = form.getRecord(),
values = form.getValues();
console.log (record);
console.log (values );
record.set(values);
win.close();
this.this.getmyClassStore().sync();
FIREBUG OUT PUT >> 它说 RECORD IS UNDEFINED 。为什么是这样 ?
undefined
Object { textfileldone="hello", textfileldtwo="bever", more...}
record is undefined
[Break On This Error]
record.set(values);