使用禁用选项禁用特定日期之前很简单:
$('.datepicker').pickadate({
disable: [
new Date(2015,3,13),
new Date(2015,3,29)
]
})
但现在它只有一个名为disableDayFn
的选项,据我所知,它的工作原理如下:
disableDayFn: function(date) {
return date.getDay() == 1 || date == new Date(2018, 26, 5); //Not working
},
关于getDay
的部分会在datepicker
(星期日或星期一或您配置的任何一天)的每个第一天停用,但我无法禁用特定日期,我也尝试使用{ {1}}但它会在每个月禁用特定的日期编号,而不是特定的日期编号。
我已经花了好几个小时来搞清楚。
答案 0 :(得分:0)
好吧,我最终尝试了更多并自行解决这个问题,如果其他人有同样的问题我的解决方案是这样的:
var disabledDays = ['2018-05-06', '2018-05-18'];
var pickADate = M.Datepicker.init(elem, {
disableDayFn: function(date) {
var dateParsed = date.toISOString().split("T")[0];
return (
date.getDay() == 1 || //This disables first day of the week
date.getDay() == 4 || //This disables fourth day of the week
disabledDays.indexOf(dateParsed) > -1 //This checks if the date is in disabledDays
);
}
});
答案 1 :(得分:0)
通过将日期转换为字符串进行比较,我可以使它正常工作,如下所示:
disableDayFn: (date) => {
return date.toString() == (new Date(2018, 6, 9)).toString() || date.toString() == (new Date(2018, 6, 19)).toString();
}