You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Flatpickr的onchange事件中将dateStr加1天设置关联日期最小值

修改后完整代码

var arrival = $('#datepicker');
var departure = $('#datepicker1');

// 保存两个选择器的Flatpickr实例,方便后续修改配置无需重复初始化
const arrivalPicker = arrival.flatpickr({
  dateFormat: "d-m-Y",
  disableMobile: true,
  locale: "de",
  minDate: "today",
  onChange: function(selectedDates, dateStr, instance) {
    // 判定是否选中了有效日期
    if (selectedDates.length > 0) {
      // 直接用回调返回的原生Date对象计算+1天,无需手动解析日期字符串
      let minDepartDate = new Date(selectedDates[0]);
      minDepartDate.setDate(minDepartDate.getDate() + 1);
      // 调用实例set方法直接更新出发日期的最小可选值
      departurePicker.set('minDate', minDepartDate);
    }
    departure.removeAttr('readonly');
    arrival.removeAttr('readonly');
  }
});

const departurePicker = departure.flatpickr({
  dateFormat: "d-m-Y",
  disableMobile: true,
  locale: "de",
  minDate: "today",
  // 如果你需要保留原有选择出发日期后限制到达日期的逻辑,参照上面的写法调整即可,这里可以按需求保留或删除onChange
});

核心修改说明

  • 优先使用Flatpickr的onChange回调自带的selectedDates参数处理日期计算,避免手动解析d-m-Y格式字符串可能出现的格式适配错误
  • 提前保存Flatpickr实例引用,用实例自带的set方法修改配置,替代原有重复初始化选择器的冗余逻辑,运行更稳定

内容的提问来源于stack exchange,提问作者Ayari

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 09:45:03