0

Я используюрадиослушателя кнопка событие не срабатывает, когда изменена вручную

document.getElementById('myId').checked = true; 

изменить какой вход радио/кнопка должна быть проверена.

Он отлично работает, но у меня есть прослушиватель события

document.getElementById('myId').onchange = function() { 
    console.log(this.checked); 
}; 

Проблема заключается в том, что слушатель события вызывается при нажатии кнопки/ввода радио, но это не срабатывает, когда я изменяю checked состояние с кодом.

ответ

0

От docs:

Событие изменение происходит, когда элемент управления теряет фокус ввода и его значение было изменено с момента получения фокуса. Это событие действует для INPUT, SELECT и TEXTAREA. элемент.

Таким образом, событие не будет срабатывать при изменении значения программно. Таким образом, вы можете запустить событие, программно вызывающее функцию.

var ele = document.getElementById('myId'); 
ele.checked = true; 
ele.onchange.call(ele); 
Смежные вопросы