Заполните поле на основе другого поля со списком в сетке extjs - PullRequest
0 голосов
/ 08 ноября 2019

В сетке у меня есть три столбца, в поле столбца есть поле со списком, а при изменении значения поля со списком автоматически заполняется поле в соответствующем столбце. Как это сделать. Extjs

введите описание изображения здесь

Пожалуйста, см. Изображение выше для кода сетки.

Моя функция ниже

autoPopulateCsid: функция (grid, rowIndex, colIndex, item, e, record, row, action) {

/// Я не могу получить всю запись / строку сетки, которую я редактирую

}

Мне нужно получить запись в функции, чтобы я мог обновить полезаписи и будет грязно автоматом. Поэтому при отмене я откажусь от всех своих изменений для этой череды

1 Ответ

2 голосов
/ 08 ноября 2019

Событие combobox select не имеет всех этих параметров, параметры, которые оно на самом деле получает: combobox, newValue, oldValue, eOpts, оттуда вы можете получить свою "запись строки" из вашего компонента редактора следующим образом.

autoPopulateCsid: function(combobox, newValue, oldValue, eOpts) {
    let myRecord = combobox.up('editor').context.record;
     myRecord.set('collateralAgreement',newValue);

}

Если вы не используете myRecord.commit (), запись будет помечена как грязная, после этого, если вы хотите отменить эти изменения, вы можете использовать rejectChanges() в хранилище вашей сетки.

...