使用mobiscroll和jquery mobile计算问题

时间:2012-11-13 15:02:52

标签: jquery date mobile mobiscroll

我试着计算出发和到达之间的夜晚, 如果设置了离境人员,则抵达人员应自动更改为在给定离职人员之后的第二天。

那是我的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   
    }); 

我尽力让它发挥作用,但我现在还不知道:)

2 个答案:

答案 0 :(得分: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); 

                                },

不是perfekt但是做了,并且我已经将以下代码添加到我的abreisescroller:

var currentDate = new Date();

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

谢谢

答案 1 :(得分:0)

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

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