Javascript-форум (https://javascript.ru/forum/)
-   ExtJS (https://javascript.ru/forum/extjs/)
-   -   tagfield в ячейке грида (https://javascript.ru/forum/extjs/68445-tagfield-v-yachejjke-grida.html)

Infarch 17.04.2017 15:58

tagfield в ячейке грида
 
Здравствуйте.

Понадобилось мне вмонтировать тегфилд в ячейку грида. Но в его работе замечаются странности победить которые пока не удалось. Вот пример: https://fiddle.sencha.com/#fiddle/13af&view

Что конкретно я имею в виду:
1. Если войти в режим редактирования и выйти ничего не меняя то ячейка все равно помечается как измененная.
2. Теги не удаляются по клику на крестик (но бекспейс работает).

Никто с таким не сталкивался?

kolka 18.04.2017 09:51

Мне кажется проблема в представлении данных tagfield в гриде.
В соответствии с примером:
var shows = Ext.create('Ext.data.Store', {
    fields: ['id', 'show'],
    data: [{
        id: 0,
        show: 'Battlestar Galactica'
    }, {
        id: 1,
        show: 'Doctor Who'
    }, {
        id: 2,
        show: 'Farscape'
    }, {
        id: 3,
        show: 'Firefly'
    }, {
        id: 4,
        show: 'Star Trek'
    }, {
        id: 5,
        show: 'Star Wars: Christmas Special'
    }]
});

Ext.create('Ext.form.Panel', {
    renderTo: Ext.getBody(),
    title: 'Sci-Fi Television',
    height: 200,
    width: 500,
    items: [{
        xtype: 'tagfield',
        fieldLabel: 'Select a Show',
        store: shows,
        displayField: 'show',
        valueField: 'id',
        queryMode: 'local',
        filterPickList: true
    }]
});

данные должны быть как объект стора.
В вашем случае просто строка.

Infarch 18.04.2017 11:24

В форме тегфилд нормально оперирует строками. Тут скорее проблема в событиях. Подозреваю что при клике крестика сначала теряется фокус ячейки и дестроится едитор. Как тут быть - пока думаю...


Часовой пояс GMT +3, время: 18:18.