adelone
@adelone

Как задать дату для второго поля в flatpickr?

Есть два поля: в одном дата начала события, в другом - дата конца события. Необходимо при выборе даты начала события изменять minDate даты конца события, при этом изменяться должно по формуле: выбранная начальная дата + 14 дней вперед. Т.е. чтобы закончить событие можно было лишь через 14 дней, все предыдущие даты должны быть заблокированы.

Есть набросок кода:

const startDate = flatpickr (document.getElementById('startDate'), {
            locale: "ru",
            dateFormat: "Y/m/d",
            onChange: function(dateStr, dateObj) {
                endDate.set("minDate", dateObj);
            }
        });
        const endDate = flatpickr (document.getElementById('endDate'), {
            locale: "ru",
            dateFormat: "Y/m/d"
        });
  • Вопрос задан
  • 392 просмотра
Решения вопроса 1
0xD34F
@0xD34F Куратор тега JavaScript
Во-первых - в onChange передаётся массив, содержащий в себе объект даты, а вовсе не строка. Во-вторых - если хотите добавлять 14 дней, тогда почему пытаетесь подсовывать в endDate.set дату без изменения? Делайте так:

onChange([ date ]) {
  endDate.set('minDate', +date + 1000 * 60 * 60 * 24 * 14);
},
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы