JavaScript | Ошибка NaN на выходе JavaScript
   
 
 
 
 
  
 
  
  
    
  
    Всем салам 👋 
Делема следующего типа:
Есть поля ввода дат и поле количества, если поле количества отрабатывает как нужно, то дата на выходе бьет как NaN
Что нужно сделать:
Берем дату заезда допустим 10.10.2010 из формы
Берем дату выезда допустим 12.10.2010 из формы
На выходе должны получить ответ переменной day 3, но он выбивает NaN
При добавление в константу значений поля с value, выбивает вообще пустой [Object][Object], что типа он вообще не в состоянии и не видит объекты типа value
 
Ответ input полей мы первоначально получаем такой: 2010-10-10 и 2010-10-12, в перевернутом формате
Поля ввода:
Js code:
   
  
    
  
 
 
 
Делема следующего типа:
Есть поля ввода дат и поле количества, если поле количества отрабатывает как нужно, то дата на выходе бьет как NaN
Что нужно сделать:
Берем дату заезда допустим 10.10.2010 из формы
Берем дату выезда допустим 12.10.2010 из формы
На выходе должны получить ответ переменной day 3, но он выбивает NaN
При добавление в константу значений поля с value, выбивает вообще пустой [Object][Object], что типа он вообще не в состоянии и не видит объекты типа value
Ответ input полей мы первоначально получаем такой: 2010-10-10 и 2010-10-12, в перевернутом формате
Поля ввода:
html
<form class="hero__form">
    <label for="" class="label">
      Дата заезда
      <input name="arrive" type="date" class="input" id="arrive" required />
    </label>
    <label for="" class="label">
      Дата выезда
      <input name="departure" id="departure" type="date" class="input" required />
    </label>
    <label for="" class="label">
      Количество гостей
      <div class="guestInput__wrapper">
        <input
          name="guests"
          type="number"
          step="1"
          min="1"
          class="input"
          required
          id="guestsInput"
        />
      </div>
    </label>
    <button class="button hero__form-button">Подобрать номер</button> 
  </form>Js code:
javascript
if (roomFiltersForm) {
guestsInput.addEventListener('input', (event) => {
    const guests = event.target.value;
const departure = document.getElementById('departure');
const arrival = document.getElementById('arrival');
const bookingButton = document.querySelector('.hero__form-button');
const firstDate = new Date(arrival);
const secondDate = new Date(departure);
// Вычисляем разницу между датами в миллисекундах
const timeDifference = firstDate.getTime() - secondDate.getTime() + (1000 * 3600 * 24);
// Преобразуем разницу в дни
const day = timeDifference / (1000 * 3600 * 24);
   window.open("booking.php?gosti=" + guests + "&day=" + day, '_blank'); // Открываем новое окно при вводе значения
  });
} 
  
  
    
  
    getElementById("departure").value
getElementById("arrival").value
Значение не забывай получать
Увидел, что у тебя с этим вариантом какие-то проблемы, так что можешь попробовать так:
var date1 = new Date($('#departure').val());
var date2 = new Date($('#arrival').val());
________
посл. ред. 08.12.2023 в 14:11; всего 1 раз(а); by TheAlex
  
 
 
   
  
 
  
getElementById("arrival").value
Значение не забывай получать
Увидел, что у тебя с этим вариантом какие-то проблемы, так что можешь попробовать так:
var date1 = new Date($('#departure').val());
var date2 = new Date($('#arrival').val());
________
посл. ред. 08.12.2023 в 14:11; всего 1 раз(а); by TheAlex
 )(aOS
 )(aOS 
 
		     Foxsa
 Foxsa  
		     TheAlex
 TheAlex