ValidityState
{{APIRef("HTML DOM")}}
The ValidityState
interface represents the validity states that an element can be in, with respect to constraint validation. Together, they help explain why an element’s value fails to validate, if it’s not valid.
Instance properties
For each of these Boolean properties, a value of true
indicates that the specified reason validation may have failed is true, with the exception of the valid
property, which is true
if the element’s value obeys all constraints.
{{domxref("ValidityState.badInput", "badInput")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the user has provided input that the browser is unable to convert.
- : A boolean value that is
{{domxref("ValidityState.customError", "customError")}}
{{ReadOnlyInline}}
- : A boolean value indicating whether the element’s custom validity message has been set to a non-empty string by calling the element’s
{{domxref('HTMLInputElement.setCustomValidity', 'setCustomValidity()')}}
method.
- : A boolean value indicating whether the element’s custom validity message has been set to a non-empty string by calling the element’s
{{domxref("ValidityState.patternMismatch", "patternMismatch")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value does not match the specifiedpattern
, andfalse
if it does match. Iftrue
, the element matches the{{cssxref(":invalid")}}
CSS pseudo-class.
- : A boolean value that is
{{domxref("ValidityState.rangeOverflow", "rangeOverflow")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value is greater than the maximum specified by themax
attribute, orfalse
if it is less than or equal to the maximum. Iftrue
, the element matches the{{cssxref(":invalid")}}
and{{cssxref(":out-of-range")}}
and CSS pseudo-classes.
- : A boolean value that is
{{domxref("ValidityState.rangeUnderflow", "rangeUnderflow")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value is less than the minimum specified by themin
attribute, orfalse
if it is greater than or equal to the minimum. Iftrue
, the element matches the{{cssxref(":invalid")}}
and{{cssxref(":out-of-range")}}
CSS pseudo-classes.
- : A boolean value that is
{{domxref("ValidityState.stepMismatch", "stepMismatch")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value does not fit the rules determined by thestep
attribute (that is, it’s not evenly divisible by the step value), orfalse
if it does fit the step rule. Iftrue
, the element matches the{{cssxref(":invalid")}}
CSS pseudo-class.
- : A boolean value that is
{{domxref("ValidityState.tooLong", "tooLong")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value exceeds the specifiedmaxlength
for{{domxref("HTMLInputElement")}}
or{{domxref("HTMLTextAreaElement")}}
objects, orfalse
if its length is less than or equal to the maximum length. Note: This property is nevertrue
in Gecko, because elements’ values are prevented from being longer thanmaxlength
. Iftrue
, the element matches the{{cssxref(":invalid")}}
and{{cssxref(":out-of-range")}}
CSS pseudo-classes.
- : A boolean value that is
{{domxref("ValidityState.tooShort", "tooShort")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value fails to meet the specifiedminlength
for{{domxref("HTMLInputElement")}}
or{{domxref("HTMLTextAreaElement")}}
objects, orfalse
if its length is greater than or equal to the minimum length. Iftrue
, the element matches the{{cssxref(":invalid")}}
and{{cssxref(":out-of-range")}}
CSS pseudo-classes.
- : A boolean value that is
{{domxref("ValidityState.typeMismatch", "typeMismatch")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the value is not in the required syntax (whentype
isemail
orurl
), orfalse
if the syntax is correct. Iftrue
, the element matches the{{cssxref(":invalid")}}
CSS pseudo-class.
- : A boolean value that is
{{domxref("ValidityState.valid", "valid")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the element meets all its validation constraints, and is therefore considered to be valid, orfalse
if it fails any constraint. Iftrue
, the element matches the{{cssxref(":valid")}}
CSS pseudo-class; the{{cssxref(":invalid")}}
CSS pseudo-class otherwise.
- : A boolean value that is
{{domxref("ValidityState.valueMissing", "valueMissing")}}
{{ReadOnlyInline}}
- : A boolean value that is
true
if the element has arequired
attribute, but no value, orfalse
otherwise. Iftrue
, the element matches the{{cssxref(":invalid")}}
CSS pseudo-class.
- : A boolean value that is
Specifications
{{Specifications}}
Browser compatibility
{{Compat}}