ValidityState: rangeOverflow property
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
The read-onlyrangeOverflow property of theValidityState interface indicates if the value of an<input>, after having been edited by the user, does not conform to the constraints set by the element'smax attribute.
If the field is numeric in nature, including thedate,month,week,time,datetime-local,number andrange types and amax value is set, if the value doesn't conform to the constraints set by themax value, therangeOverflow property will be true.
In this article
Value
A boolean that istrue if theValidityState does not conform to the constraints.
Examples
>Input with numeric overflow
The following example checks the validity of anumeric input element.A constraint has been added using themax attribute which sets a maximum value of18 for the input.If the user enters a number higher than 18, the element fails constraint validation, and the styles matching:invalid and:out-of-range CSS pseudo-classes
/* or :invalid */input:out-of-range { outline: red solid 3px;}body { margin: 0.5rem;}pre { padding: 1rem; height: 2rem; background-color: lightgrey; outline: 1px solid grey;}<pre>Validation logged here...</pre><input type="number" max="18" />const userInput = document.getElementById("age");const logElement = document.getElementById("log");function log(text) { logElement.innerText = text;}userInput.addEventListener("input", () => { userInput.reportValidity(); if (userInput.validity.rangeOverflow) { log("Number is too high!"); } else { log("Input is valid…"); }});Specifications
| Specification |
|---|
| HTML> # dom-validitystate-rangeoverflow> |