Как вынуть данные из option в массив?
Ситуация такая: в зависимости от возраста пользователя нужно выводить один из трех блоков. Пользователь заполняет форму даты рождения, которая представлена так:
<form action="index.js" method="GET" id="date" class="select-container">
<div class="arrow-container">
<select class="date" form="date" name="day" id="day" required>
<option value="0">День</option>
<option value="1">01</option>
<option value="2">02</option>
<option value="3">03</option>
<option value="4">04</option>
<option value="5">05</option>
</select>
</div>
<div class="arrow-container-1">
<select name="month" id="month" form="date" class="month date" required>
<option value="0">Месяц</option>
<option value="1">Январь</option>
<option value="2">Февраль</option>
<option value="3">Март</option>
<option value="4">Апрель</option>
<option value="5">Май</option>
</select>
</div>
<div class="arrow-container-2">
<select name="year" id="year" form="date" class="date" required>
<option value="0">Год</option>
<option value="1">1960</option>
<option value="2">1961</option>
<option value="3">1962</option>
<option value="4">1963</option>
<option value="5">1964</option>
</select>
</div>
</form>
Проблема в том, что я не знаю, как сделать так, чтобы в массиве данные отображались в виде [dd.mm.yyy]. Пробовала так, но в консоли выводится просто пустой массив. Подскажите, пожалуйста, как можно сделать по-другому?
let date = document.querySelector("option");
const dates = [];
dates.forEach(function (date) {
dates.push(date);
dates.split('.');
})
console.log(dates);
Ответы (1 шт):
Автор решения: Aziz Umarov
→ Ссылка
Можно двигаться в таком направлении. Не много подправил вашу разметку.
let day = document.querySelector("#day");
let month = document.querySelector("#month");
let year = document.querySelector("#year");
const dates = [];
dates.push(day.options[day.selectedIndex].text + '.' + month.options[month.selectedIndex].value + '.' + year.options[year.selectedIndex].text)
console.log(dates);
<form action="index.js" method="GET" id="date" class="select-container">
<div class="arrow-container">
<select class="date" form="date" name="day" id="day" required>
<option value="0">День</option>
<option value="01" selected>01</option>
<option value="02">02</option>
<option value="03">03</option>
<option value="04">04</option>
<option value="05">05</option>
</select>
</div>
<div class="arrow-container-1">
<select name="month" id="month" form="date" class="month date" required>
<option value="0">Месяц</option>
<option value="01">Январь</option>
<option value="02">Февраль</option>
<option value="03" selected>Март</option>
<option value="04">Апрель</option>
<option value="05">Май</option>
</select>
</div>
<div class="arrow-container-2">
<select name="year" id="year" form="date" class="date" required>
<option value="0">Год</option>
<option value="1">1960</option>
<option value="2">1961</option>
<option value="3">1962</option>
<option value="4" selected>1963</option>
<option value="5">1964</option>
</select>
</div>
</form>