Jquery datepicker - setDate不能作为初始化的一部分工作,但作为独立命令工作?

时间:2017-10-06 16:43:39

标签: javascript jquery datepicker jquery-ui-datepicker

我正在使用带有一组参数的JQuery datepicker 除setDate外,所有参数都在初始化时工作。

SetDate在作为独立命令提供时也可以正常工作。

我做错了吗?为什么setdate在这种情况下不能作为part或init工作?

var maxDateSelectable = new Date(2017, 10, 1);
var minDateSelectable = new Date(2017, 1, 1);
var fromDate = new Date(2017, 9, 12);
$("#WorkingDate").datepicker({
  maxDate: maxDateSelectable,
  minDate: minDateSelectable,
  //setDate: fromDate, //does not work
  beforeShowDay: noWeekends
}); // ~fromDate
//Works here why?
$("#WorkingDate").datepicker("setDate", fromDate);

function noWeekends(date) {
  var noWeekend = window.$.datepicker.noWeekends(date);
  return noWeekend;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>

<input type='text' id='WorkingDate'>

相应的jsfiddle:https://jsfiddle.net/Jersey_Guy/gkymd2hw/

1 个答案:

答案 0 :(得分:1)

初始设置对象没有setDate属性,只有 用作稍后设置日期的方法,这就是它无法正常工作的原因。

如果要设置初始日期,可以通过设置输入值,或在已初始化的日期选择器上调用setDate方法,或使用defaultDate设置

$("#WorkingDate").datepicker({
  maxDate       : maxDateSelectable,
  minDate       : minDateSelectable,
  beforeShowDay : noWeekends
}).datepicker("setDate", fromDate);