Задать вопрос
@Valsin

Как получить значение radio?

Здравствуйте, есть вот такой вот код. На данный момент при клике на кнопку, значение в консоль выводится, но как сделать так, чтобы значение выводилось сразу же при клике на radio-элемент?
<button class="selBtn">Click</button>
<input type="radio" name="rad" value="orange" class="u16-radop">
<input type="radio" name="rad" value="red" class="u16-radop">
<input type="radio" name="rad" value="green" class="u16-radop">

document.querySelector('.selBtn').onclick = () => {
	let radio = document.querySelectorAll('input[name="rad"]');
		for (let i = 0; i < radio.length; i++) {
			if (radio[i].checked) {
				console.log(radio[i].value);
		        }
	       }
}
  • Вопрос задан
  • 1993 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 2
@UnformedVoid
Разработчик ПО
Используйте событие change.
Ответ написан
Комментировать
0xD34F
@0xD34F Куратор тега JavaScript
О каких элементах идёт речь, по какому событию и что с ними делать:

const selector = 'input[name="rad"]';
const eventType = 'change';
const handler = e => console.log(e.target.value);

Слушаем событие непосредственно на элементах:

document.querySelectorAll(selector).forEach(n => {
  n.addEventListener(eventType, handler);
});

Или, применяем делегирование:

document.addEventListener(
  eventType,
  e => e.target.matches(selector) && handler(e)
);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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