gpt4 book ai didi

javascript - pikaday 插件 两个日期之间 15 天

转载 作者:行者123 更新时间:2023-12-03 05:03:01 26 4
gpt4 key购买 nike

我有一个预订表格,我只需要两个输入 .checkin.checkout,这就是为什么我将 datepickerdaterange 一切顺利,几乎一件事是我如何在两个日期之间选择 15 天?

顺便说一句,我正在使用 pikaday plugin我的代码

$(document).on('focus', '.checkin, .checkout', function (){
return new Pikaday({
numberOfMonths: 2,
field: this,
format: "DD.MM.YYYY",
minDate: new Date(),
firstDay: 1,
maxDate: new Date(2020, 12, 31),
onSelect: function() {
e = this.getDate();
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/pikaday.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/css/pikaday.min.css" rel="stylesheet"/>
<div class="form">
<input type="text" class="checkin" placeholder="Checkin" />
<input type="text" class="checkout" placeholder="Checkout" />
</div>

最佳答案

您可以根据 checkin 日期选择器的值限制 checkout 日期选择器的 minDatemaxDate

我已使用 getMaxDate() 获取日期选择器的最大日期,如果它是结账选择器,我将 maxdate 设置为 15 + checkin 日期。同样,我使用 getMinDate() 获取日期选择器的最短日期,如果它是结账选择器,我将 mindate 设置为 checkin 日期。

$(document).on('focus', '.checkin, .checkout', function (){
return new Pikaday({
numberOfMonths: 2,
field: this,
format: "DD.MM.YYYY",
minDate: getMinDate(this),
firstDay: 1,
maxDate: getMaxDate(this),
onSelect: function() {
e = this.getDate();
}
});
});
function getMaxDate(element){
if(element.className=='checkout' && element.parentNode.querySelector('.checkin').value)
return new Date(new Date(element.parentNode.querySelector('.checkin').value).getTime()+(15*24*60*60*1000));
else
return new Date(2020, 12, 31);
}
function getMinDate(element){
if(element.className=='checkout' && element.parentNode.querySelector('.checkin').value)
return new Date(element.parentNode.querySelector('.checkin').value);
else
return new Date();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/pikaday.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/pikaday/1.5.1/css/pikaday.min.css" rel="stylesheet"/>
<div class="form">
<input type="text" class="checkin" placeholder="Checkin" />
<input type="text" class="checkout" placeholder="Checkout" />
</div>

关于javascript - pikaday 插件 两个日期之间 15 天,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42138868/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com