var rowEditing = Ext.create('Ext.grid.plugin.RowEditing',{
clicksToMoveEditor: 1,
autoCancel: true,
cancelEdit: function() {
if (this.editing) {
this.getEditor().cancelEdit();
var selection = grid.getSelectionModel().getSelection()[0];
if (selection) {
store.remove(selection);
}
}
},
listeners: {
edit: function(editor, e) {
var unionId = editor.record.get("unionId");
var unionName = editor.record.get("unionName");
var unionType = editor.record.get("unionType");
alert("unionId="+unionId+",unionName="+unionName+",unionType="+unionType);
if (unionId != "" && unionId != null) {
// alert("修改");
Ext.Ajax.request({
url:"/grid/updateUnion.json",
params:{
unionId:unionId,
unionName:unionName,
unionType:unionType
},
success:function(response, opts) {
var obj = Ext.decode(response.responseText);
if (obj.success) {
store.load();
} else {
Ext.Msg.alert("修改失败!");
}
}
});
} else {
// alert("添加!");
Ext.Ajax.request({
url:"/grid/addUnion.json",
params:{
unionName:unionName,
unionType:unionType
},
success:function(response, opts) {
var obj = Ext.decode(response.responseText);
if (obj.success) {
store.load();
} else {
Ext.Msg.alert("添加失败!");
}
}
});
}
}
}
});rowedit未提供cancel按钮事件,需要覆盖cancelEdit()函数,在IE中存在BUG。
本文介绍如何使用 ExtJS 的 RowEditing 插件来实现表格行编辑功能,并覆盖默认的取消编辑行为以适应特定需求。针对 IE 浏览器中存在的 BUG 进行了讨论。
544

被折叠的 条评论
为什么被折叠?



