我们在ExtJs 3.2中有一个gridpanel,在其中一列上有一个文本字段作为编辑器:
var psp_config= {
store:ProjectSponsorView.s_store,
.....
tbar: new Ext.Toolbar({
...
}),
......
columns: [
....
{header: '% Contribution',
renderer: Ext.util.Format.numberRenderer('000.00'),
editor: new Ext.form.TextField({
listeners: {
'change' : function (field, newValue, oldValue) {
........
}
}
})
}
我们遇到这样一种情况,即当用户提交表单时,如果焦点仍在编辑器/列中,则编辑器的更改事件不会被触发。
这会导致为该特定列提交陈旧数据
在这种情况下,我们如何强制让gridpanel / column / editor注册/接受更改后的值?
答案 0 :(得分:0)
我假设你使用EditorGridPanel?如果是这样,可能会附加到它的afteredit事件:
Config看起来像这样:
......
columns: [
....
{
header: '% Contribution',
renderer: Ext.util.Format.numberRenderer('000.00'),
editor: new Ext.form.TextField({})
}
],
listeners: {
afteredit: function(e) {
//handle changes here
}
}