ElementInternals: reportValidity() メソッド
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2023年3月.
reportValidity() は ElementInternals インターフェイスのメソッドで、適用された制約検証ルールをこの要素が満たしているかどうかをチェックします。
reportValidity が false を返した場合、キャンセル可能な invalid イベントが要素で発生します。
このメソッドは ElementInternals.checkValidity() と同様の振る舞いをしますが、 ElementInternals.validationMessage の値をユーザーエージェントに送信して表示させます。
構文
reportValidity()
引数
なし。
返値
論理値で、要素がすべての検証される制約に合格していれば true を返します。
例外
NotSupportedErrorDOMException-
要素の
formAssociatedプロパティがtrueに設定されていない場合に発生します。
例
以下の例では、 ElementInternals.setValidity() を使用して、要素が検証ルールを満たしていないことを示します。 reportValidity() を呼び出すと false が返され、 "メッセージ" という値がユーザーエージェントに送られ、表示されます。
再度 setValidity を呼び出し、今度はすべてのルールが false になっていることを示すと、reportValidity() は true を返します。
let element = document.getElementById("join-checkbox");
element.internals_.setValidity({ valueMissing: true }, "メッセージ");
console.log(element.internals_.reportValidity()); // false
element.internals_.setValidity({});
console.log(element.internals_.reportValidity()); // true
仕様書
| Specification |
|---|
| HTML> # dom-elementinternals-reportvalidity> |
ブラウザーの互換性
Loading…