Как установить максимальный атрибут даты ввода значения другого ввода даты x количество дней?

#javascript #html

Вопрос:

Я пытаюсь установить атрибут max для ввода даты окончания на ввод даты начала 4 дня. Другими словами, дата окончания не может быть более чем через 4 дня после даты начала. Я исправил все остальные атрибуты, но не могу исправить это.

Мой html и JS для других атрибутов:

 lt;div class="calendar"gt;   lt;divgt;  lt;label for="start"gt;Start Dato:lt;/labelgt;  lt;input type="date" id="start" name="start" requiredgt;  lt;/divgt;   lt;divgt;  lt;label for="end"gt;Slutt Dato:lt;/labelgt;  lt;input type="date" id="end" name="end" requiredgt;  lt;/divgt;  lt;/divgt;  

JS:

 lt;scriptgt;  let today = new Date().toISOString().split('T')[0];  let date3m = new Date();  date3m.setMonth(date3m.getMonth()   3);  date3m = date3m.toISOString().split('T')[0];  document.getElementsByName("start")[0].setAttribute('min', today);  document.getElementsByName("start")[0].setAttribute('max', date3m);  lt;/scriptgt;   lt;scriptgt;  let fDate = document.querySelector('#start');  let tDate = document.querySelector('#end');   fDate.addEventListener('change', function() {  tDate.min = this.value;  });  lt;/scriptgt;  

Ответ №1:

Должно сработать следующее:

 fDate.addEventListener('change', function() {  var max = new Date(fDate.value);  max.setDate(max.getDate()   4);  tDate.max = max.toISOString().split('T')[0]; });