2013-05-03 87 views
7

我有兩個jQuery日期選擇器從和日期選擇。我有下面的代碼,如果你選擇6月15日在第一個然後在第二個你現在只能從15日起選擇。jquery datepicker set mindate

我的問題是我真的需要設置 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); 
      } 
    }); 
    }); 
+0

我看'的minDate:0,'可以將其改爲以滿足您的目的是什麼? – 2013-05-03 22:39:12

+0

是的我已經有了它設置最短日期,我只需要添加能夠添加一天到上述日期代碼 – 2013-05-03 22:44:32

回答

17

要根據其他限制一個日期選擇器,可以設置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)); 
});