JQuery Datepicker/Datetimepicker - 如何根据所选选项在 java 中设置 MaxDate

JQuery Datepicker/Datetimepicker - How to set MaxDate in java according to a selected option

我在 Javascript 方面不太好 - 但我正在尝试:

我有一个事件列表,用户可以在其中 "program to close" 将来某个日期的事件。

但是,这个未来的日期不能晚于事件。

然后,我需要为每个事件设置一个最大日期。

我正在使用 JQuery DatePicker - 并设置我这样做的最大日期:

    $('#closeevent').datetimepicker({
    minDate: 0,
    maxDate: new Date(2016, 8, 15, 8, 0)
});

最大日期 = 2016/8/15 08:00

我的问题:

如何为每个事件更改“2016、8、15、8、0”(maxDate 值)onClick 按钮(因为每个事件都有不同的 maxDate。

事件 1 ... maxDate (2016, 9, 10, 8, 0) .... [按钮点击:..] 事件 2 ... maxDate (2016, 10, 22, 10, 30) .... [点击按钮:..]

如果我单击事件 1 的按钮 - maxDate 更改为 2016、9、10、8、0..

如果我单击事件 2 的按钮 - maxDate 更改为 2016、10、22、10、30..

非常感谢

您可以使用 beforeShowDay 属性 分配一个在显示每个日期之前调用的函数。 return 允许您以更高的粒度控制日期。

您可以查看此 fiddle 作为示例。 https://jsfiddle.net/tv760t1s/

var maxDate = new Date(2016, 8, 15, 8, 0);
$(".dateChange").click(function() {
  maxDate = new Date($(this).attr('value'));
  console.log(maxDate);
});
$("#datepicker").datepicker({
  minDate: 0,
  maxDate: new Date(2016, 8, 15, 8, 0),
  beforeShowDay: function(date) {
    console.log(date, maxDate);
    if (date > maxDate) {
      return [false, 'noShowClass', 'Date time not available'];
    } else {
      return [true, '', ''];
    }
  }
});

HTML:

<div>    
  <input type='text' id='datepicker' value=''>
  <input class='dateChange' type='button' value='2016-08-15 08:00:00'>
  <input class='dateChange' type='button' value='2016-09-10 08:00:00'>
</div>