jQuery datepicker没有显示下一年的日期

时间:2015-12-21 11:22:15

标签: jquery date jquery-ui datepicker calendar

我正在尝试显示一个开始日期列表但由于某种原因,我的功能似乎只显示今年的日期,而不是2016年的任何日期。我已经添加了下面的代码以及一个jsfiddle链接。任何有关这方面的帮助都会很棒,我一直在寻找如何使其发挥作用,但已找到任何可以帮助明年约会的东西。

HTML

<div id="date"></div>

的jQuery

var availableDates = ["25-12-2015", "02-01-2016"];

function available(date) {
  dmy = date.getDate() + "-" + (date.getMonth() + 1) + "-" + date.getFullYear();
  if ($.inArray(dmy, availableDates) != -1) {
    return [true, "", "Available"];
  } else {
    return [false, "", "unAvailable"];
  }
  console.log(dmy, availableDates);
}

var lastDate = new Date("2016-10-31");  

$('#date').datepicker({
  dayNamesMin: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],
  firstDay: 1,
  beforeShowDay: available,
  minDate: "-0M",
  maxDate: lastDate
});

jsfiddle

1 个答案:

答案 0 :(得分:2)

问题是getDate(),第二个会返回2而不是02。与getMonth()相同。

availableDates更改为: -

var availableDates = ["25-12-2015", "2-1-2016"];

或替换dmy,如下所示: -

dmy = ("0" + date.getDate()).slice(-2) + "-" + ("0" + (date.getMonth()+1)).slice(-2) + "-" + date.getFullYear();

Fiddle