我有带有 RowEditing 插件的网格。
编辑器有 2 列:一列带有组合框,另一列带有禁用的文本字段。
我需要在更改组合框值后更改文本字段值。
我有组合框监听器:
listeners = {
select: function (combo, records) {
var editorRecord = myGrid.getPlugin('rowEditPlugin').editor.getRecord();
editorRecord.data["SomeCol"] = "SomeValue";
}
}
但文本字段中的值不会刷新,直到再次调用 roweditor。
我只需要为单元格设置文本值,而不更新存储。而且,如果我单击行编辑器的取消按钮,我需要将单元格值返回到旧值。
感谢您的时间、所有回复和所有帮助。
您可以使用网格的选择模型来更改它,如下所示:
{
text: 'Type',
dataIndex: 'type',
editor: {
xtype: 'combo',
typeAhead: true,
selectOnTab: true,
displayField:"name",
listeners: {
select: function(combo, records) {
myGrid= this.up('grid');
var selectedModel = this.up('grid').getSelectionModel().getSelection()[0];
//selectedModel.set('dataIndexOfNextCol', "Success");
val = combo.getValue();
if(val == 'type1'){
Ext.getCmp('textFld').setValue("success");
}
else{
Ext.getCmp('textFld').setValue("failure");
}
}
},
{
text: 'Item',
dataIndex: 'item',
editor: {
xtype: 'textfield',
id: 'textFld'
}
}
您必须在更新时提交更改。因此您可以致电edit
事件监听器,
listeners: {
edit: function(editor, e) {
e.record.commit();
}
},
作为参考,看看这个DEMO https://fiddle.sencha.com/#fiddle/6p7
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)