jquery datepicker设置思想

时间:2013-05-03 22:36:47

标签: javascript jquery

我有两个jQuery日期选择器来选择日期。我有以下代码,如果您在第一个中选择6月15日然后在第二个中,您现在只能从第15个开始选择。

我遇到的问题是我真的需要将设置为 datepicker为+1天。所以用户只能选择第16个。

我的技能不够先进,无法将日期添加到parseDate

    $(function() {
        var dates = $( "#from_date, #to_date" ).datepicker({
        dateFormat: 'dd-mm-yy',
        minDate: 0,
        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 );
            }
    });
    }); 

1 个答案:

答案 0 :(得分:18)

要根据另一个限制一个日期选择器,可以将minDatemaxDate设置设置为在另一个日期选择器等中选择的日期。

像这样的东西

$(function() {

     /* global setting */
    var datepickersOpt = {
        dateFormat: 'dd-mm-yy',
        minDate   : 0
    }

    $("#from_date").datepicker($.extend({
        onSelect: function() {
            var minDate = $(this).datepicker('getDate');
            minDate.setDate(minDate.getDate()+2); //add two days
            $("#to_date").datepicker( "option", "minDate", minDate);
        }
    },datepickersOpt));

    $("#to_date").datepicker($.extend({
        onSelect: function() {
            var maxDate = $(this).datepicker('getDate');
            maxDate.setDate(maxDate.getDate()-2);
            $("#from_date").datepicker( "option", "maxDate", maxDate);
        }
    },datepickersOpt));
});