我正在创建预订小部件,并希望在抵达日期后的1天内设置“出发日期”。这是我到目前为止所做的,但出于某种原因,它显示的是相同的日期,而不是第二天。
jQuery(document).ready(function() {
var nowTemp = new Date();
var now = new Date(nowTemp.getFullYear(), nowTemp.getMonth(), nowTemp.getDate(), 0, 0, 0, 0);
var checkin = jQuery('#arrivalDate').fdatepicker({
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() + 1);
checkout.update(newDate);
}
checkin.hide();
jQuery('#departureDate')[0].focus();
}).data('datepicker');
var checkout = jQuery('#departureDate').fdatepicker({
onRender: function (date) {
return date.valueOf() <= checkin.date.valueOf() ? 'disabled' : '';
}
}).on('changeDate', function (ev) {
checkout.hide();
}).data('datepicker');
});
答案 0 :(得分:0)
这个问题已在Incrementing a date in JavaScript得到解答,但如果您不想阅读它。那你应该改变这个
var newDate = new Date(ev.date);
到这个
var newDate = new Date(ev.getDate() + 1);
然后newDate会有当天加上你添加的那一天。