--- title: ValidityState slug: Web/API/ValidityState tags: - API - Constraint Validation API - Forms - HTML DOM - Interface translation_of: Web/API/ValidityState ---
{{APIRef("HTML DOM")}} {{gecko_minversion_header("2.0")}}

ValidityState インターフェイスは、制約の検証に関して、要素が持つことになる妥当性の状態を表します。要素の値が不正な場合に、なぜ検証に失敗するのかを知る手がかりにもなります。

プロパティ

下記のプロパティはどれも真偽値を返します。true は指定された検証が失敗したことを表します。ただし valid プロパティの true だけは、要素の値が全ての制約に適合していることを表します。

{{domxref("ValidityState.badInput")}} {{ReadOnlyInline}}
入力値をブラウザが処理できないことを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.customError")}} {{ReadOnlyInline}}
その要素のカスタム検証メッセージが、 setCustomValidity() メソッドによって空文字以外に設定されていることを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.patternMismatch")}} {{ReadOnlyInline}}
値が、指定された {{htmlattrxref("pattern", "input")}} と一致しないことを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.rangeOverflow")}} {{ReadOnlyInline}}
値が、 {{htmlattrxref("max", "input")}} 属性で指定された最大値を超えていることを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.rangeUnderflow")}} {{ReadOnlyInline}}
値が、{{htmlattrxref("min", "input")}} 属性で指定された最小値を下回っていることを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.stepMismatch")}} {{ReadOnlyInline}}
値が、{{htmlattrxref("step", "input")}} 属性で決められた規則に合わないことを示す {{jsxref("Boolean")}} です。(つまり、step の値で割り切れないことを表します)
{{domxref("ValidityState.tooLong")}} {{ReadOnlyInline}}
値が、{{domxref("HTMLInputElement")}} や {{domxref("HTMLTextAreaElement")}} オブジェクトの maxlength を超えていることを示す {{jsxref("Boolean")}} です。
注: Gecko では maxlength より長い値はそもそも入力できないので、true になることは決してありません。
{{domxref("ValidityState.tooShort")}} {{ReadOnlyInline}}
値が、{{domxref("HTMLInputElement")}} や {{domxref("HTMLTextAreaElement")}} オブジェクトの minlength を下回っていることを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.typeMismatch")}} {{ReadOnlyInline}}
値が、({{htmlattrxref("type", "input")}} が emailurl の場合に)求められる構文規則に従っていないことを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.valid")}} {{ReadOnlyInline}}
要素が全ての制約の検証に適合し、有効であることを示す {{jsxref("Boolean")}} です。
{{domxref("ValidityState.valueMissing")}} {{ReadOnlyInline}}
{{htmlattrxref("required", "input")}} 属性が指定されているのに要素の値がないことを示す {{jsxref("Boolean")}} です。

仕様

仕様書 策定状況 コメント
{{ SpecName('HTML WHATWG', 'forms.html#the-constraint-validation-api', 'ValidityState') }} {{Spec2('HTML WHATWG')}} 現行の標準
{{ SpecName('HTML5.1', '#the-constraint-validation-api', 'ValidityState') }} {{Spec2('HTML5.1')}} 前回のスナップショット {{SpecName('HTML5 W3C')}} から変更なし
{{ SpecName('HTML5 W3C', 'forms.html#the-constraint-validation-api', 'ValidityState') }} {{Spec2('HTML5 W3C')}} このインターフェイスを含む {{SpecName('HTML WHATWG')}} の最初のスナップショット

ブラウザー実装状況

{{Compat("api.ValidityState")}}

関連情報