我正在尝试使用Materialize建议的方法将事件的日期添加到日期选择器的日历中,但不适用于我,或者我做错了事。
var elems = document.querySelector('.datepicker')
var instances = M.Datepicker.init(elems, {
events: [new Date('2018,12,12').toLocaleDateString()]
}
编辑-
我的问题的解决方案-
下面是我使用此日期格式('2018,12,12')的最终工作结果的代码,因为对于我来说,更容易理解 12 等于到 12月,而不是此日期格式(2018,11,25)的11。
我还添加了其他可以正常工作的参数。
感谢您的帮助,感谢Germa V。
document.addEventListener('DOMContentLoaded', function() {
let eventsDates = [
new Date('2018,12,1').toDateString(),
new Date('2018,12,2').toDateString()
];
let disableListDate = [
new Date('2018,12,3').toDateString(),
new Date('2018,12,4').toDateString()
];
let optionsDate = {
defaultDate: defaultDate,
setDefaultDate: true,
firstDay: 1,
events: eventsDates,
disableWeekends: false,
autoClose: false,
showDaysInNextAndPreviousMonths: false,
showClearBtn: true,
i18n:{
months:
['Enero', 'Febrero', 'Marzo', 'Abril', 'Mayo', 'Junio', 'Julio', 'Agost', 'Sept', 'Oct', 'Noviem..', 'Diciemb..'],
monthsShort: ['Ene', 'Feb', 'Mar', 'Abril', 'Mayo', 'Jun', 'Jul', 'Agos', 'Sep', 'Oct', 'Nov', 'Dic'],
weekdays: ['Dom','Lun', 'Mar', 'Mie', 'Jue', 'Vie', 'Sab']
},
format: 'dd-mmm-yyyy',
onSelect() {
if (optionsDate.events.includes(this.date.toDateString())) {
alert('Event Date');
}
},
disableDayFn(date) {
if(disableListDate.includes(date.toDateString()))
return true
else
return false
},
parse(){
}
}
let elems = document.querySelector('.datepicker');
let instances = M.Datepicker.init(elems, optionsDate);
});
答案 0 :(得分:2)
这不是您在Date()
中设置日期的方式,如果您想知道如何在Datepicker函数中设置日期,则可以查看此答案-> How to set date in Materialize Datepicker
var optionsDate = {
events: [new Date(2018, 11, 20).toDateString(),
new Date(2018, 11, 21).toDateString()],
onSelect() {
if (optionsDate.events.includes(this.date.toDateString())) {
console.log('Event Date');
}
}
}
var elemsDate = document.querySelector(".datepicker");
var instanceDate = M.Datepicker.init(elemsDate, optionsDate);