【问题标题】:jQuery datepicker not showing next years datesjQuery datepicker 不显示明年的日期
【发布时间】:2016-03-27 11:00:14
【问题描述】:

我正在尝试显示开始日期列表,但由于某种原因,我的函数似乎只显示今年的日期,而不是 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

【问题讨论】:

    标签: jquery date jquery-ui datepicker calendar


    【解决方案1】:

    问题是getDate() 第二个将返回2 而不是02getMonth() 也一样。

    要么将您的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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-05-27
      • 1970-01-01
      • 2017-04-29
      • 2012-12-11
      • 2015-08-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多