HTMLInputElement: invalid event
The invalid
event fires when a submittable element has been checked for validity and doesn't satisfy its constraints.
Bubbles | No |
---|---|
Cancelable | Yes |
Interface | Event |
Event handler property | GlobalEventHandlers.oninvalid |
This event can be useful for displaying a summary of the problems with a form on submission. When a form is submitted, invalid
events are fired at each form control that is invalid. The validity of submittable elements is checked before submitting their owner <form>
, or after the checkValidity()
method of the element or its owner <form>
is called.
It is not checked on blur
.
Examples
If a form is submitted with an invalid value, the submittable elements are checked and, if an error is found, the invalid
event will fire on the invalid
element. In this example, when an invalid event fires because of an invalid value in the input, the invalid value is logged.
HTML
<form action="#">
<div>
<label>
Enter an integer between 1 and 10:
<input type="number" min="1" max="10" required>
</label>
</div>
<div><input type="submit" value="submit"></div>
</form>
<hr>
Invalid values:
<ul id="log"></ul>
JavaScript
const input = document.querySelector('input')
const log = document.getElementById('log')
input.addEventListener('invalid', (e) => {
log.appendChild(Object.assign(
document.createElement('li'),
{ textContent: JSON.stringify(e.target.value) }
))
})
Result
Specifications
Specification |
---|
HTML Standard # event-invalid |
Browser compatibility
BCD tables only load in the browser