Событие onchange JavaScript происходит, когда изменяется первоначальное состояние или содержимое элемента. В некоторых случаях событие возникает, когда элемент выходит из фокуса ввода.
Объект event доступен для всех обработчиков событий во всех браузерах. Его свойства содержат дополнительную информацию о текущем событии.
Событие работает по-разному для разных элементов:
- JavaScript select onchange — событие onchange происходит, когда изменяется выделение;
- input:checkbox и input:radio — в Firefox , Opera , Google Chrome и Safari : событие onchange происходит, когда изменяется состояние выбора. В Internet Explorer – когда элемент выходит из фокуса ввода и когда изменяется его состояние.
Для реализации кроссбраузерности, чтобы определить, когда изменилось состояние элемента, используйте событие onclick :
- textarea, input:password, input:search и input:text — событие onchange происходит, когда элемент выходит из фокуса ввода и когда его содержимое изменилось. Чтобы определить, когда изменилось содержимое, используйте в Internet Explorer событие onpropertychange , а в Firefox , Opera , Google Chrome и Safari ( в Internet Explorer , начиная с версии 9 ) — событие oninput . В Google Chrome , Safari и Internet Explorer , начиная с версии 9 , также может использоваться событие textInput ;
- input:file — событие onchange JavaScript происходит, когда изменилось содержимое. Если пользователь в Internet Explorer вводит путь ( не используя кнопку «Обзор» ), то событие onchange происходит, когда элемент выходит из фокуса ввода. Поэтому в Internet Explorer используйте событие onpropertychange ;
- input:range — событие onchange происходит, когда изменилось значение элемента.
Пример HTML-кода 1:
Этот пример иллюстрирует использование события onchange для элемента select :
Пример HTML-кода 2 :
В этом примере используется событие onchange JavaScript и объект Date , чтобы вычислить время, прошедшее между двумя заданными значениями:
onchange JavaScript поддерживается объектами :
Данная публикация представляет собой перевод статьи « onchange event / change event » , подготовленной дружной командой проекта Интернет-технологии.ру
Материал из JQuery
Устанавливает функцию handler в качестве обработчика события change, на выбранные элементы.
Метод является аналогом bind(«change», handler(eventObject)).
handler(eventObject) — функция, которая будет установлена в качестве обработчика. При вызове она будет получать объект события eventObject.
Метод отличается от предыдущего возможностью передавать в обработчик дополнительные данные.
Является аналогом bind(«change», eventData, handler(eventObject)).
handler(eventObject) — см. выше.
eventData — дополнительные данные, передаваемые в обработчик. Они должны быть представлены объектом в формате: .
Вызывает событие change, у выбранных элементов страницы. Метод является аналогом trigger(«change»).
Убрать установленный обработчик можно с помощью метода unbind().
Все три варианта использования метода, являются аналогами других методов (см. выше), поэтому все подробности использования change(), можно найти в описании этих методов.
Напомним, что событие change происходит не непосредственно в момент изменения, а только при потери фокуса измененного элемента формы.
У меня создалось впечатление, что я могу получить значение выбора ввода, выполнив это $(this).val(); и применив параметр onchange к полю select.
Казалось бы, он работает, только если я ссылаюсь на ID.
Как это сделать, используя это.
Вы также можете сослаться на onchange event-
У меня создалось впечатление, что я могу получить значение select введите это значение $(this).val();
Это работает, если вы подписываетесь ненавязчиво (это рекомендуемый подход):
если вы используете onselect и смешиваете разметку с помощью script, вам нужно передать ссылку на текущий элемент:
Источник: