【问题标题】:Is there a way to distinguish time selection events from calendar events in onChange event for `flatpickr`?有没有办法在`flatpickr`的onChange事件中区分时间选择事件和日历事件?
【发布时间】:2019-08-06 09:25:54
【问题描述】:

onChange 事件被触发时,我找不到将时间选择事件与flatpickr 中的日历事件区分开来的方法。

const instance = flatpickr(flatpickrRef.current, {
   mode: 'range',
   enableTime: true,
   time_24hr: true,
   defaultDate: defaultDate as unknown as number,
   disable: [
     date => {
       return date > new Date();
     },
   ],
   positionElement: positionElementRef.current,
   onClose,
   onChange,
});

【问题讨论】:

    标签: javascript reactjs flatpickr


    【解决方案1】:

    mousedown 事件在选择 datetime 更改时触发

    const instance = flatpickr(".flatpickr", {
      mode: 'range',
      enableTime: true,
      time_24hr: true,
      disable: [
        date => {
          return date > new Date();
        },
      ],
      onChange: () => {
        console.log(event ? 'Date Changed' : 'Time Changed')
      },
    });
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
    <script src="https://cdn.jsdelivr.net/npm/flatpickr"></script>
    
    <div class="flatpickr">
      <input name="test" value="03.07.2019" type="text" data-input>
      <a class="input-button" title="toggle" data-toggle>
        <i class="icon-calendar"></i>
      </a>
    </div>

    【讨论】:

      猜你喜欢
      • 2020-12-15
      • 2023-02-02
      • 2016-12-18
      • 1970-01-01
      • 2019-11-18
      • 2018-04-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多