0

我尝试计算出发日期和到达日期之间的夜数,如果设置了出发日期,则到达日期应自动更改为给定出发日期后的一天。

那是我的 mobiscrolldatepickers

$(function(){

    $('#anreise').scroller({
        preset: 'date',
        theme: 'ios',
            dateFormat: 'dd.mm.yyyy',
            dateOrder: 'M DD ddyy',
minDate: new Date()

    });    

});

$(function(){

    $('#abreise').scroller({
        preset: 'date',
        theme: 'ios',
           dateFormat: 'dd.mm.yyyy',
            dateOrder: 'M DD ddyy'


    });    

});

这就是我尝试计算的函数:

 var DatePicked = function() { 
    var departure = $("#anreise"); 
    var arrival = $("#abreise"); 
    var nights = $("#nacht"); 
    var triggeringElement = $(this); 
    var departureDate = departure.scroller("getDate"); 
    var minArrivalDate = departure.scroller("getDate"); 

    if (departureDate != null) { 
    minArrivalDate.setDate(departureDate.getDate() + 1); 
    } else { 
    minArrivalDate.setDate(minArrivalDate.getDate() + 1); 
    } 

    arrival.scroller('option', 'setDate', minArrivalDate); 


    };

这就是我尝试调用更改的方式:

$('#anreise').scoller({ 
    onSelect: DatePicked   
    }); 

我尽力让它工作,但我现在不知道更多:)

4

2 回答 2

1

所以我想通了:

我将该功能添加到我的 anreise-scroller 中:

onSelect: function() {
                                    var date1 = $('#anreise').scroller('getDate');
                                    var date2 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate() + 1);
                                    $('#abreise').scroller('option', 'minDate', date2);
                        $("#abreise").scroller("setDate",date2, true); 

                                },

不完美但做到了,我将以下代码添加到我的 abreisescroller 中:

var currentDate = new Date();

 var nextcurrentDate = new Date(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDate() + 1);
$("#abreise").scroller("setDate",nextcurrentDate, true);

谢谢你

于 2012-11-15T11:38:34.393 回答
0

您使用的 setDate 方法错误,应该是这样的:

arrival.scroller('setDate', minArrivalDate, true); 
于 2012-11-14T06:40:43.877 回答