Ext js 6.6.0: Ext.Msg.alert не работает внутри слушателей изменения поля даты - PullRequest
0 голосов
/ 10 октября 2019

В приведенном ниже коде, когда условие соответствует, экстренное предупреждение не отображается на экране. Когда я отладил его, я обнаружил, что он работает в фоновом режиме, но без отладки он работает так быстро, что он не виден пользователю и исчезает.

Пожалуйста, дайте мне знать, что здесь не так:

{
    xtype: 'datefield',
    reference: 'endDate',
    fieldLabel: 'End Date',
    labelAlign: 'top',
    format: 'm/d/Y',
    editable: false,
    flex: 1,
    margin: '0 10',
    //allowBlank: false,
    //validateBlank: true,
    listeners: {
        change: function (me, newValue, oldValue, {}) {
            var endDate = me.lookupController().lookupReference('endDate').getValue();
            if (newValue <= endDate) {
                Ext.Msg.alert('Error', 'End Date must be greater than Start Date');
                me.focus();
            } else if (newValue < Ext.Date.format(new Date(), 'm/d/Y')) {
                Ext.Msg.alert('Error', 'End Date cannot be less than todays Date');
                me.focus();
            }
        }
    }
}

1 Ответ

1 голос
/ 10 октября 2019

пожалуйста, учитывайте объект Date при сравнении значений поля даты. А также проверьте, что показанные оповещения могут быть скрыты за окном и т. Д.

Вот рабочий пример для вас: https://fiddle.sencha.com/#view/editor&fiddle/301k

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