Zebra_datepicker将类添加到单击日期

时间:2014-11-28 09:47:20

标签: javascript jquery date datepicker

我的情况: 我正在使用zebra_datepicker进行预订。 我有两个配对的日期选择器(所以第二个是1天后的第一个)。 - 这些日期(以及之间的日期)将保存在数组中 - 我再次初始化datepickers并将disabled_dates设置为我的数组(因此禁用预订日期)

现在,我的问题: 我正在尝试在按钮单击后将类添加到第一个选定日期(第一个datepicker)和最后一个选定日期(第二个datepicker)。谁有人可以提供帮助? 谢谢!

更新(一些代码示例):

HTML:

<div class="flatArrive">
    <div class="Zebra_DatePicker_Icon_Wrapper">
        <input id="inputArrive"/>
        <div id="calendarArrive"></div>
    </div>
</div>
<div class="flatDepart">
    <div class="Zebra_DatePicker_Icon_Wrapper">
        <input id="inputDepart"/>
        <div id="calendarDepart"></div>
    </div>
</div>
<input type="submit" id="submitBooking" value="reservate!"/>

初始化datepickers:

var disabledDates = [];
$('#inputArrive').Zebra_DatePicker({
            disabled_dates: disabledDates,
            direction: 1,
            pair: $('#inputDepart')
});

$('#inputDepart').Zebra_DatePicker({
            disabled_dates: disabledDates,
            direction: 1
});

获取禁用(预订)日期的功能:

getDatesBetweenArriveAndDepart : function (arrive, depart) {
        var arriveTS = parseInt(moment(arrive.val(), 'DD.MM.YYYY').format('X'), 10),
            departTS = parseInt(moment(depart.val(), 'DD.MM.YYYY').format('X'), 10),
            daysToReservate = [];

        while (arriveTS <= departTS) {
            if($.inArray(moment.unix(arriveTS).format('DD MM YYYY'), this.disabledDates) === -1) {
                daysToReservate.push(moment.unix(arriveTS).format('DD MM YYYY'));
                arriveTS += this.dayInMs;
            } else {
                alert('You cant book twice');
                daysToReservate = [];
                return;
            }
        }

        $.merge(disabledDates, daysToReservate);
    }

使用填充的disabledDates数组再次按下按钮并使用init日历调用我的函数:

$('#submitBooking').on('click', function () {
           getDatesBetweenArriveAndDepart($('#inputArrive'), $('#inputDepart'));
           initCalendars();
        });

在点击内部我需要一个函数,将类设置为datepicker内的到达和离开日。

0 个答案:

没有答案