HTMLButtonElement: validity property

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since December 2018.

The validity read-only property of the HTMLButtonElement interface returns a ValidityState object that represents the validity states this element is in.

Value

A ValidityState object.

Examples

The following example demonstrates that a <button> is in an invalid state when a customError is set; in this state, the validityState's validity property is false, while checkValidity() returns true if the button's type is not "submit", because such buttons are not candidates for constraint validation.

js
const button = document.getElementById("myButton");
button.setCustomValidity("This button is invalid.");
const validityState = button.validity;
console.log(validityState.valid); // false
console.log(validityState.customError); // true
console.log(button.checkValidity()); // false if the button is of the "submit" type, true otherwise

Specifications

Specification
HTML
# the-constraint-validation-api:dom-cva-validity

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
validity

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also