首页 > 解决方案 > flatpickr:禁用以前选择的日期

问题描述

我正在开发一个签证计算器,并希望用户能够选择将添加的多次旅行(在单独的字段中选择入境和出境日期)。我只使用JS。创建新行程时,会打开两个输入字段,它们有各自的 ID。显示日历时,我想禁用所有以前选择的日期(当然还有两者之间的日期)。我怎样才能动态地实现这一点?

newFpEntry = flatpickr( #entryDate${entryDateNum}, {maxDate: new Date(entryDate).fp_incr(timeFrameValueCalendar), disable: [ ??? ] });

希望我能很好地描述我的问题。我很感激任何想法!

标签: calendarcalculatorflatpickr

解决方案


所以,我想出了一些办法。

  1. 我使用flatpickr的语法将每个新的日期对(进入和退出)以对象的形式推送到数组(先前定义)中,将键从:分配给值newEntryDate,将键分配给:到值newExitDate

    allBlockedDates.push({from: newEntryDate, to: newExitDate});

  2. 我将数组插入 flatpickr

    newFpEntry = flatpickr(`#entryDate${entryDateNum}`, { disable: allBlockedDates });

希望这可能对其他遇到类似问题的人有所帮助。


推荐阅读