ExtJS:dateField -如何禁用所有和启用一些动态数组日期

yizd12fk  于 2022-11-04  发布在  其他
关注(0)|答案(1)|浏览(117)

如何禁用所有日历日期并从动态数组启用?
例如,我有一个数组

['1.12.21', '25.11.21', '3.12.21', '8.10.21']

我应该从数组中禁用除日期之外的所有日期-如何执行此操作?

ubof19bj

ubof19bj1#

您可以使用Ext.form.field.DatedisabledDates配置和setDisabledDates方法来更新它,请参阅文档中的。您在此处指定的数组将被解释为正则表达式,因此在您的情况下,您可以设置一个求反条件来禁用除某些日期之外的所有日期。
尝试下面的代码,也是这个工作的小提琴。这在经典的工具包,我不知道如何在现代。

Ext.application({
    name: 'Fiddle',
    launch: function () {
        const enabledDatesArray = ['01.10.21', '06.10.21', '15.10.21'];
        const disabledDatesRegex = '^(?!'+enabledDatesArray.join('|')+').*$';
        Ext.create('Ext.panel.Panel', {
            width: 400,
            renderTo: Ext.getBody(),
            items: [{
                xtype: 'datepicker',
                format: 'd.m.y',
                disabledDates: [disabledDatesRegex]
            }]
        });
    }
});

相关问题