【问题标题】:Set flatpickr datetime on last enabled day does not work在最后启用的日期设置 flatpickr 日期时间不起作用
【发布时间】:2020-12-16 15:34:17
【问题描述】:

我的网页上有 flatpickr 日期选择器。用户可以从 minDate 到 maxDate 的范围内选择日期和时间。在创建表单组件时,我还想设置用户选择的最后一个值 - selectedDate。

如果 selectedDate 是从最后一天开始的,flatpicker 会忽略它。

我的代码:

const options: Partial<BaseOptions> = {
    minDate: minDate, // "2020-12-05 00:00"
    maxDate: maxDate, // "2020-12-24 23:59"
    dateFormat: 'Y-m-d H:i',
    defaultDate: selectedDate, // "2020-12-24 17:00"
    enableTime: true,
};

const picker = <flatpickr.Instance> flatpickr(inputElement, options);
picker.setDate(selectedDate);

【问题讨论】:

    标签: flatpickr


    【解决方案1】:

    经过一些调试,我发现了一个问题。 Flatpicker 将内部 maxDate 设置为最后一个午夜 2020-12-24 23:59 => 2020-12-24 00:00 和内部 setDate() 忽略 selectedDate 2020-12-24 17:00,其中不在 minDate maxDate 之间。

    我通过在 picker.setDate(selectedDate); 之前添加这行代码来解决这个问题

    // ... init the picker ...
    picker.set('maxDate', maxDate);
    // ... setDate() ...
    

    这会将内部 maxDate 设置为所需的日期时间,并使您的 selectedDate 正常工作。

    【讨论】:

      猜你喜欢
      • 2017-04-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-06-02
      • 2017-10-07
      • 2016-09-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多