【问题标题】:How to set second litepicker startDate based on first litepicker startDate selection如何根据第一个 litepicker startDate 选择设置第二个 litepicker startDate
【发布时间】:2022-01-27 03:00:44
【问题描述】:

嘿,我的 Stackoverflowers 伙伴,我正在使用 litepicker.js 并遇到了一个问题,我希望你们中的某个人能帮助我解决这个问题。

我已经建立了两个独立的 litepicker,并成功地在第一个和第二个中填充了今天的日期和明天的日期。 (这些也被成功地接受为两者的 minDate)

我无法弄清楚的是如何将第二个 litepicker 的 minDate 设置为第一个 litepicker 选择的 startDate 之后的一天。

你可以在这个 codepen 中看到我的位置 https://codepen.io/DigitalDesigner/pen/oNGRWzV

HTML 代码:

<form>
  <input id="start-date" class="form-control start-date"> / 
  <input id="end-date" class="form-control end-date">
</form>

Javascript:

<script>
let current = new Date();
let tomorrow = new Date(current.getTime() + 86400000); // + 1 day in ms
tomorrow.toLocaleDateString();
// Add litepicker calendar to stay dates

const startpicker = new Litepicker({
    element: document.getElementById('start-date'),
    singleMode: true,
    allowRepick: true,
    autoRefresh: true,
    format: 'D MMMM YYYY',
    startDate: current,
    minDate: new Date(),
    numberOfMonths: 1,
    numberOfColumns: 1,
    tooltipText: {
        one: 'night',
        other: 'nights'
    },
    tooltipNumber: (totalDays) => {
        return totalDays - 1;
    },
    plugins: ['mobilefriendly']
});
const endpicker = new Litepicker({
    element: document.getElementById('end-date'),
    singleMode: true,
    allowRepick: true,
    autoRefresh: true,
    format: 'D MMMM YYYY',
    startDate: tomorrow,
    minDate: current,
    numberOfMonths: 1,
    numberOfColumns: 1,
    tooltipText: {
        one: 'night',
        other: 'nights'
    },
    tooltipNumber: (totalDays) => {
        return totalDays - 1;
    },
});
</script>

这里是 litepicker 网站:https://litepicker.com/

如何根据第一个 litepicker 选择的日期为第二个 litepicker 设置 minDate?

提前致谢。

【问题讨论】:

    标签: javascript jquery forms date


    【解决方案1】:

    将此添加到代码中

    startpicker.on('selected', (date1, date2) => {
        endpicker.setOptions({
            minDate: startpicker.getDate(),
            startDate: startpicker.getDate()
      });
    });
    

    【讨论】:

    • 这只是设置当前日期和明天的另一种格式,我需要将第二个日期设置为选择第一个日期为选择后的一天。我可以用一个 litepicker 做到这一点,但试图弄清楚如何在每个日期使用 2 个 litepicker 时做到这一点。
    • 好的,现在我明白了,我编辑了我的答案,检查一下
    • 我使用了和我写的块相同的代码,你可以在这里找到它codepen.io/yazanaldbaisy/pen/jOaEBje 可能我没有让你好,这是你需要的吗?
    • 我更新了codepen中的代码,检查一下codepen.io/yazanaldbaisy/pen/jOaEBje当你选择1月28日结束日期变成1月29日
    • 还是一样的,我的朋友。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-07
    • 2021-05-19
    • 1970-01-01
    • 2014-08-16
    • 1970-01-01
    • 2019-03-13
    相关资源
    最近更新 更多