【问题标题】:Calculating problems with mobiscroll and jquery mobile用 mobiscroll 和 jquery mobile 计算问题
【发布时间】:2012-11-13 15:02:52
【问题描述】:

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

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

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

【问题讨论】:

    标签: jquery date mobile mobiscroll


    【解决方案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);
    

    谢谢

    【讨论】:

      【解决方案2】:

      你用的setDate方法不对,应该是这样的:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2011-12-30
        • 2013-02-08
        • 2011-11-24
        • 1970-01-01
        • 1970-01-01
        • 2014-04-13
        • 1970-01-01
        相关资源
        最近更新 更多