Итак, у меня есть ExtJs 4 Grid Panel
, который имеет два столбца.
Столбец ONE - это ComboBox
с пользовательским средством визуализации
Ext.ux.comboBoxRenderer = function(combo) {
return function(value) {
var idx = combo.store.find(combo.valueField, value);
var rec = combo.store.getAt(idx);
return (rec == null ? '<img src="/js/extjs4/resources/themes/images/default/grid/loading.gif" />' : rec.get(combo.displayField) );
};
}
Столбец TWO - это числовой столбец
{
allowBlank: false,
header: 'Time',
dataIndex: 'tedPaidTime',
align: 'right',
field: {
xtype: 'numberfield',
allowBlank: false,
minValue: 0,
maxValue: 100000
},
flex: 0.20,
selectOnFocus:true
}
Теперь, когда я загружаю DataStore
, я хочу, чтобы столбец FIRST был доступен только для чтения.Что легко, если я установлю флаг ReadOnly
.
Однако у меня есть кнопка, которая добавляет запись NEW для хранения, и я хочу, чтобы эта новая запись НЕ имела флаг readonly.
Таким образом, если вы измените первый столбец и сохраните его, вы не сможете его изменить.Может изменять только новые записи перед их сохранением.
Бизнес-правила требуют, чтобы они удаляли старую запись, если она неверна.
Спасибо.