Jqueryui — Datepicker — смещение диапазона дат

Я использую jqueryUI datepicker для формы бронирования. вот почти нетронутый код из datepicker с диапазоном дат

$(function() {
    var dates = $( "#from, #to" ).datepicker({
        dateFormat: 'dd-mm-yy',
        minDate: "+0D",
        defaultDate: "+0D",
        changeMonth: true,
        numberOfMonths: 1,
        onSelect: function( selectedDate ) {
            var option = this.id == "from" ? "minDate" : "maxDate",
                instance = $( this ).data( "datepicker" ),
                date = $.datepicker.parseDate(
                    instance.settings.dateFormat ||
                    $.datepicker._defaults.dateFormat,
                    selectedDate, instance.settings );
            dates.not( this ).datepicker( "option", option, date );
        }
    });
});

как это работает сейчас: когда я выбираю дату в первом поле, минимальная дата во втором поле автоматически устанавливается на эту дату.

Я хочу, чтобы это переместилось на следующий день.

скажем, я выбираю 01.01.2010 в первом поле, я хочу, чтобы первая доступная дата во втором поле была 01.02.2010 (формат д/м/гггг)

я не могу понять это, любая помощь будет принята с благодарностью


person krasatos    schedule 04.04.2012    source источник


Ответы (1)


Модифицированный код:

$(function() {
        var dates = $( "#from, #to" ).datepicker({
            dateFormat: 'dd-mm-yy',
            minDate: "+0D",
            defaultDate: "+0D",
            changeMonth: true,
            numberOfMonths: 1,
            onSelect: function( selectedDate ) {
                var option = this.id == "from" ? "minDate" : "maxDate",
                    instance = $( this ).data( "datepicker" ),
                    date = $.datepicker.parseDate(
                        instance.settings.dateFormat ||
                        $.datepicker._defaults.dateFormat,
                        selectedDate, instance.settings );
                this.id == "from" ? date.setDate(date.getDate()+1) : date.setDate(date.getDate()-1);
                dates.not( this ).datepicker( "option", option, date );
            }
        });
    });

Добавьте this.id == "from" ? date.setDate(date.getDate()+1) : date.setDate(date.getDate()-1); перед установкой mindate или maxdate.

person Ahamed    schedule 04.04.2012