Как в календаре datapicker отключить выборочные даты по формуле?
Есть библиотечка js datapicker
Я по api получаю объект c определенными датами и хочу сделать так, чтобы в выпадающем календаре были доступны только получаемые из с бека. Как это можно сделать, учитывая, что есть свойство disabler в котором можно отключать глобально дни, месяцы календаря и метод disabledDates для более тонкой настройки в котором можно задавать определенный перечень нужных дат setTimeout(() => { if (Values) { picker = datepicker(datePickerElem, { disabler: date => { var datelist = []; for (var i = 0; i <= 30; i++) { if (Values[i] == undefined) continue; for (key in Values[i]) break; var result = Values[i][key].date; datelist.push(result); } return date.getDay() === datelist; }, disabledDates: [new Date('2020-11-16'), new Date('2020-11-19')] } } }, 500); |
js-datepicker рабочие дни из массива дат
giwuf,
<!DOCTYPE html>
<html>
<head>
<title>Untitled</title>
<meta charset="utf-8">
<style type="text/css">
</style>
<script src="https://unpkg.com/js-datepicker"></script>
<link rel="stylesheet" href="https://unpkg.com/js-datepicker/dist/datepicker.min.css">
</head>
<body>
<input type="text" class="some-input" >
<script>
let dataApi = [new Date('2020-11-16'), new Date('2020-11-19')];
const picker = datepicker('.some-input', {
alwaysShow: true,
disabler: d =>!dataApi.map(v => v.setHours(0)).includes(d.getTime())
})
</script>
</body>
</html>
|
Огромное спасибо, рони! Блестяще! :victory:
|
| Часовой пояс GMT +3, время: 03:32. |