在 Ext.grid.EditorGridPanel编辑过的字段,EXT会自动加上一个dirty标记(红色的小三角形)
我在保存数据后,使用
[code="js"]for (i = 0; i < ds.getCount(); i ++) {
var record = ds.getAt(i);
if (record.dirty)
record.dirty = false;
}[/code]
这样可以把Ext.Data.Store中的dirty标记去掉,但是在EditorGridPanel里面仍然保留了那个小三角形图标。
我的问题是,编辑后如何去掉EditorGridPanel那个红色三角形标记?
注:不会只能通过Ext.Data.Store的reload吧?
[b]问题补充:[/b]
回1楼:我吧record.dirty = false;成了record.commit();好像效果还是一样,还是无法去掉?
[code="js"] for (i = 0; i < ds.getCount(); i ++) {
var record = ds.getAt(i);
if (record.dirty)
record.commit();
}
[/code]
能简要说下怎么用么?
[b]问题补充:[/b]
dwdsd
[b]问题补充:[/b]
[b]问题补充:[/b]
[b]问题补充:[/b]
[b]问题补充:[/b]
回答的有点晚,不知道你实现了没有。
var index = this.grid.getView().findRowIndex(t);
var record = this.grid.store.getAt(index);
debugger
//record.dirty=false;
record.set(this.dataIndex, !record.data[this.dataIndex]);
record.dirty=false;
record.commit();
放到下面 没问题!放上面不行 被record。set冲掉了。
首先获得修改过的的record,在record中有一个commit方法,调用这个方法可以去掉这个record的修改标记。