newdecline
@newdecline
Front-end-developer

Почему не работает событие addEventListener?

Почему не работает событие addEventListener ?

https://codepen.io/newdecline/pen/RBoOeL
  • Вопрос задан
  • 421 просмотр
Решения вопроса 2
iNickolay
@iNickolay
Потому что метод должен слушать элемент, а не коллекцию :)
var radio = document.querySelectorAll('[type="radio"]');
console.log(radio);
radio.forEach(function (item) { // Перебор коллекции
  item.addEventListener('change', function() {
    for ( i = 0; i < radio.length; i++ ) {
      if ( radio[i].checked ) {
        alert( radio[i].value );
      }
    }
  });  
});
Ответ написан
delphinpro
@delphinpro Куратор тега JavaScript
frontend developer
Потому что radio у вас — это NodeList
Его нужно обежать циклом и на каждую ноду повесить обработчик.

Почаще и повнимательнее читайте документацию: querySelectorAll()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы