Отображение значений ввода в выпадающем списке для сетки и окна редактирования.Extjs6 - PullRequest
0 голосов
/ 29 мая 2019

У меня есть пример fiddle , в котором я использую Ext.window.Window для редактирования записей сетки.Идентификатор значения отображается в самой сетке и пуст в окне редактирования.

Для комбинированного списка в сетке, я сделал это, и он работает

{
            text      : 'type',
            dataIndex : 'type',
            flex: 1,
            renderer: function (v, p, record) { 
                    return record.get('type');
                },
        },

Для комбинированного списка вРедактирование формы я добавил в выпадающий список listeners:{ render: function(combo)}

{                   
                xtype: 'combobox',
                store: {
                    type: 'type-store'
                },                  
                fieldLabel: 'Type',
                displayField: 'name',
                valueField: 'id',
                queryMode: 'remote',
                publishes: 'name',
                name: 'name',
                listeners:{
                'render': function(combo){
                    console.log(combo);
                    combo.setValue();//How  set current value
                }
            }

Но я не понимаю, как правильно установить текущее значение?

спасибо

1 Ответ

1 голос
/ 30 мая 2019

Перво-наперво, чтобы связать значение комбо, ваши данные data.json, вы должны включить идентификатор для «типа», а не просто описание:

{
    "id": 1, "id_type":3 , "type": "Третий", "mytextfield": "Текстовое значение"
},

Вы можете использовать «имя», если хотите, но вы также должны изменить свое поле со списком valueField на «имя».

В контроллере сначала загрузите комбинированное хранилище (или автозагрузку), а затем, вместо этого, используя view_model окон, используйте форму для загрузки вашей записи:

console.log(wind.lookup("mycombo").getStore().load());
wind.down('form').loadRecord(record);

Я изменил вашу скрипку с этими изменениями

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...