The onchange
property of the GlobalEventHandlers
mixin is an EventHandler
for processing change
events.
change
events fire when the user commits a value change to a form control. This may be done, for example, by clicking outside of the control or by using the Tab key to switch to a different control.
Note: Unlike oninput
, the onchange
event handler is not necessarily called for each alteration to an element's value
.
Syntax
target.onchange = functionRef;
functionRef
is a function name or a function expression. The function receives an Event
object as its sole argument.
Example
This example logs the number of characters in an <input>
element, every time you modify its contents and then change focus away from it.
HTML
<input type="text" placeholder="Type something here, then click outside of the field." size="50">
<p id="log"></p>
JavaScript
let input = document.querySelector('input');
let log = document.getElementById('log');
input.onchange = handleChange;
function handleChange(e) {
log.textContent = `The field's value is
${e.target.value.length} character(s) long.`;
}
Result
Specification
Specification | Status | Comment |
HTML Living StandardThe definition of 'onchange' in that specification. | Living Standard |
Browser compatibility
The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.
Update compatibility data on GitHub
Desktop | Mobile | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
onchange
|
Chrome
Full support 1 |
Edge
Full support 12 |
Firefox
Full support 1 |
IE
Full support 9 |
Opera
Full support 9 |
Safari
Full support 3 |
WebView Android
Full support 1 |
Chrome Android
Full support 18 |
Firefox Android
Full support 4 |
Opera Android
Full support 10.1 |
Safari iOS
Full support 1 |
Samsung Internet Android
Full support 1.0 |
Legend
- Full support
- Full support
See also
change
event
GlobalEventHandlers.onchange by Mozilla Contributors is licensed under CC-BY-SA 2.5.