Значение привязки Extjs не очищается - PullRequest
0 голосов
/ 14 ноября 2018

Значение привязки Extjs не очищается, когда пользователь очищает поле даты вручную (пользователь меняет поле даты на пустое)

Я не могу опубликовать код, но обнаружил похожую скрипку

В этой скрипте я хочу, чтобы значение очищалось при ручной очистке поля даты, вместо этого в поле дисплея отображается старое значение

. Было бы очень полезно, если бы кто-то могпредоставь мне решение

1 Ответ

0 голосов
/ 14 ноября 2018

Вы можете использовать событие specialkey для datefield для достижения требуемого результата.

Вы можете проверить здесь с работающей скрипкой .

Примечание Вы можете поставить свою логику на основе ваших требований. Я только что создал простой пример.

Фрагмент кода

Ext.application({
    name: 'Fiddle',

    launch: function () {
        Ext.create('Ext.panel.Panel', {

            renderTo: Ext.getBody(),

            viewModel: {
                data: {
                    dateFrom: null,
                }
            },

            items: [{
                xtype: 'datefield',
                emptyText: 'Date From',
                bind: '{dateFrom}',
                listeners: {
                    specialkey: function (field, e) {
                        if (e.getKey() == e.DELETE || e.getKey() == e.BACKSPACE) {
                            field.up('panel').getViewModel().set('dateFrom', null);
                        }
                    }
                }
            }, {
                xtype: 'displayfield',
                bind: {
                    value: '{dateFrom}'
                }
            }]
        });

    }
});
...