jQuery Datepicker - 设置到达日期后1天的出发日期

时间:2016-07-08 03:43:31

标签: jquery datepicker

我正在创建预订小部件,并希望在抵达日期后的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');
});

1 个答案:

答案 0 :(得分:0)

这个问题已在Incrementing a date in JavaScript得到解答,但如果您不想阅读它。那你应该改变这个

var newDate = new Date(ev.date);

到这个

var newDate = new Date(ev.getDate() + 1);

然后newDate会有当天加上你添加的那一天。