概念:我正在创建一个一年的日历。 说01-01-2017 到 31-12-2017。
问题:当我将最小日期设置为 08-06-2017 时,日期选择器重新排列,它成为 01-06-2017到 31-05-2018 的日期选择器我需要的是它应该从1 jan 2017
开始并以31 dec 2017
结束
JS代码:
$('#generate_sampling .full-year').multiDatesPicker({
addDates: dates,
numberOfMonths: (samplingStatus=="EDIT" ? [3,4] : [6,4]),
minDate : startDate,
maxDate : endDate,
defaultDate : '01/30/'+(year == '' ? '2017' : year),
});
希望这有帮助
$('.full-year').multiDatesPicker('destroy');
在设置日期选取器之前销毁minDate
演示
在这里,我设法停止了日期的重新排列。 我在beforeShowDay下添加了一些条件,并评论了我的最小和最大日期参数
$('#generate_sampling .full-year').multiDatesPicker({
addDates: dates, // array of dates
numberOfMonths: [3,4] ,
/*minDate : startDate,
maxDate : endDate,*/
defaultDate : '01/30/'+(year == '' ? '2017' : year),
beforeShowDay: function(dateStamp) {
var className="";
if(dateStamp < new Date(startDate) || dateStamp > new Date(endDate)){
className =" ui-datepicker-unselectable ui-state-disabled "
}
var title = "Disabled";
return [true, className ,title]; // title will be displayed as tooltip
}
});
如果在ShowDay之前不起作用,请检查您的多日期选择器核心js文件。 下面的这一行必须注释。 取消注释。 它会起作用。
this.multiDatesPicker.originalBeforeShowDay = options.beforeShowDay;
谢谢!