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.


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.


<form action="#">
    <li><label>Enter an integer between 1 and 10: <input type="number" min="1" max="10" required></label></li>
    <li><input type="submit" value="submit"></li>
</form><p id="log"></p>


const input = document.querySelector('input')
const log = document.getElementById('log')

input.addEventListener('invalid', logValue)

function logValue(e) {
  log.textContent +=



Specification Status Comment
HTML Living Standard
The definition of 'Invalid event' in that specification.
Living Standard
HTML 5.1
The definition of 'Invalid event' in that specification.
The definition of 'Invalid event' in that specification.

Browser compatibility

ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
invalid eventChrome Full support 10Edge Full support 12Firefox Full support 4IE Full support 10Opera Full support 10Safari Full support 5WebView Android Full support 4Chrome Android Full support 18Firefox Android Full support 64Opera Android Full support 12Safari iOS Full support 5Samsung Internet Android Full support 4.0


Full support
Full support

See also