我正在使用基础日期选择器两个日期startDate和endDate。
1)点击日期选择器日历时,默认显示今天的日期。
2)如果我从startDate更改任何日期,例如,如果我选择" 10-10-2016"。 在不更改endDate的任何日期的情况下,如果我打开enddate日历,它应该以" 10-10-2016"只要。但它是从今天开始的。
3)我的重新定义是,所选的startDate是不在textfield中的日历中的下一个结束日期。请看图片。
请看这个小提琴,
请看第一张图片。
我正在选择" 14.07.2016"来自startDate。
点击结束日期,它已从今天的日期开始。但它被禁用了。它是正确的。我想从" 14.07.2016"开始只要。蓝色活动日期应显示在选定的startDate上。
查看最后一张图片。 Upto" 2016年7月14日"所有日期都是令人费解的。但它并不是从那个日期开始的。请帮帮我怎样才能做到这一点。
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
var checkin = jQuery('#startDate').fdatepicker({
format: "dd.mm.yyyy",
onRender: function(date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
}).data('datepicker');
var checkout = jQuery('#endDate').fdatepicker({
format: "dd.mm.yyyy",
onRender: function(date) {
return date.valueOf() < checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
checkout.hide();
}).data('datepicker');
<input type="text" id="startDate" name="start_datum" class="input_text date" value="">
<input type="text" id="endDate" name="end_datum" class="input_text" value="">
答案 0 :(得分:1)
您需要在开始日期添加更改事件,以更新结束日期。
试试这个: -
var checkin = jQuery('#startDate').fdatepicker({
format: "dd.mm.yyyy",
onRender: function(date) {
return date.valueOf() < now.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function(ev) {
if (ev.date.valueOf() > checkout.date.valueOf()) {
var newDate = new Date(ev.date)
newDate.setDate(newDate.getDate());
checkout.update(newDate);
$('#endDate')[0].focus();
}
}).data('datepicker');