ValidityState

Baseline 已廣泛支援

此特性已相當成熟,可在許多裝置和瀏覽器版本上使用。自 ⁨2015 年 7 月⁩以來,各瀏覽器均已提供此特性。

ValidityState 介面表示一個元素可以擁有的有效性狀態,這些狀態與約束驗證有關。它們共同解釋了為什麼一個元素的值在不有效的情況下未能透過驗證。

例項屬性

對於這些布林屬性中的每一個,值 true 表示特定的驗證失敗原因成立,但 valid 屬性除外,當元素的值符合所有約束時,該屬性的值為 true

badInput 只讀

一個布林值,當用戶輸入的值瀏覽器無法轉換時為 true

customError 只讀

一個布林值,指示是否透過呼叫元素的 setCustomValidity() 方法將元素的自定義有效性訊息設定為非空字串。

patternMismatch 只讀

當值與指定的 pattern 不匹配時為 true,如果匹配則為 false。如果為 true,則元素匹配 :invalid CSS 偽類。

rangeOverflow 只讀

當值大於 max 屬性指定的最小值時為 true,否則為 false。如果為 true,則元素匹配 :invalid:out-of-range CSS 偽類。

rangeUnderflow 只讀

當值小於 min 屬性指定的最小值時為 true,否則為 false。如果為 true,則元素匹配 :invalid:out-of-range CSS 偽類。

stepMismatch 只讀

當值不符合 step 屬性決定的規則(即,它不能被步長值整除)時為 true,如果符合步長規則則為 false。如果為 true,則元素匹配 :invalid CSS 偽類。

tooLong 只讀

對於 HTMLInputElementHTMLTextAreaElement 物件,當值超過指定的 maxlength 時為 true,否則為 false(其長度小於或等於最大長度)。注意:在 Gecko 中,此屬性永遠不會為 true,因為元素的長度會被限制在 maxlength 以內。 如果為 true,則元素匹配 :invalid:out-of-range CSS 偽類。

tooShort 只讀

對於 HTMLInputElementHTMLTextAreaElement 物件,當值未能滿足指定的 minlength 時為 true,否則為 false(其長度大於或等於最小長度)。如果為 true,則元素匹配 :invalid:out-of-range CSS 偽類。

typeMismatch 只讀

當值不符合必需的語法時為 true(當 typeemailurl 時),如果語法正確則為 false。如果為 true,則元素匹配 :invalid CSS 偽類。

valid 只讀

當元素符合所有驗證約束,因此被視為有效時為 true,否則為 false(如果它不符合任何約束)。如果為 true,則元素匹配 :valid CSS 偽類;否則匹配 :invalid CSS 偽類。

valueMissing 只讀

當元素具有 required 屬性但沒有值時為 true,否則為 false。如果為 true,則元素匹配 :invalid CSS 偽類。

規範

規範
HTML
# validitystate

瀏覽器相容性

另見