jQuery UI Datepicker隐藏了前几个月

时间:2016-03-10 05:45:15

标签: javascript jquery jquery-ui-datepicker

我正在尝试使用日期范围选择创建12个月的jquery UI Datepicker。 我正在使用

numberOfMonths: [12,1],

工作正常 问题是,当我试图在两个月(2016年3月15日至2016年4月15日)之间选择两个日期时,日历将从四月开始我不能编辑上个月的日期,我希望在每个条件下保持12个月我需要12个月jquery datepicker,可以选择两个日期。我的代码是

<div id="jrange" class="dates">
          <input type="text" id="startDate" size="10" placeholder="9 Mar" readonly>
          <span id="spaceDash">&#8211;</span>
          <input type="text" id="endDate" size="10" placeholder="10 Mar" readonly>
          <div></div>
        </div>
$(document).ready(function(){
$("#jrange div").datepicker({
  minDate: 0,
  numberOfMonths: [12,1],
  dateFormat: "MM dd",
  showMonthAfterYear: true,
  beforeShowDay: function(date) {
    var date1 = $.datepicker.parseDate($(this).datepicker("option", "dateFormat"), $("#startDate").val());
    var date2 = $.datepicker.parseDate($(this).datepicker("option", "dateFormat"), $("#endDate").val());
    return [true, date1 && ((date.getTime() == date1.getTime()) || (date2 && date >= date1 && date <= date2)) ? "dp-highlight" : ""];

  },
  onSelect: function(dateText, inst) {
    var date1 = $.datepicker.parseDate($(this).datepicker("option", "dateFormat"), $("#startDate").val());

    var date2 = $.datepicker.parseDate($(this).datepicker("option", "dateFormat"), $("#endDate").val());
    if (!date1 || date2) {
            $("#input1").val(dateText);
            $("#input2").val("");
            $(this).datepicker("option", "minDate", dateText);
        } else {
            $("#input2").val(dateText);
            $(this).datepicker("option", "minDate", null);
        }
    }
});

0 个答案:

没有答案