【发布时间】:2013-06-20 19:19:36
【问题描述】:
试图了解行编辑的工作原理。这是 Sencha 网站上的 example。
所以我看到我们可以编辑和保存行元素,但是有人可以逐步解释我更新/保存的列的存储位置吗?以及如何访问它们?
Sencha 演示也有行编辑的代码。非常感谢
【问题讨论】:
试图了解行编辑的工作原理。这是 Sencha 网站上的 example。
所以我看到我们可以编辑和保存行元素,但是有人可以逐步解释我更新/保存的列的存储位置吗?以及如何访问它们?
Sencha 演示也有行编辑的代码。非常感谢
【问题讨论】:
使用RowEditing 插件所做的任何更改都会直接对您正在编辑的网格存储中的模型进行。然后,您可以随心所欲地使用该商店将其保存到服务器或使用store.sync() 的其他任何地方;
保存使用行编辑器输入的数据的一种常用方法是将edit 侦听器添加到您的RowEditing 插件配置中,并让您的服务器在那里调用:
var rowEditing = Ext.create('Ext.grid.plugin.RowEditing', {
clicksToMoveEditor: 1,
autoCancel: false,
listeners: {
edit: function(editor, context, eOpts) {
var record = e.record;
//do your processing here, e.g.:
Ext.Ajax.request({
url: 'myServer/saveRecord',
params: { record: record }
});
}
}
})
【讨论】:
请检查这一行
var record = e.record;
这里的事件 e 没有在这个函数中定义。所以将其更改为 eOpts.record 以获取该记录
和
Ext.data.JsonP.request({
url: url,
params: { record : Ext.encode( record) } ,
success: function(data) {
store.load();
},
failure : function(record, operation) {
store.rejectChanges();
}
});
【讨论】: