ElementInternals: willValidate 属性

基线 2023

新功能

2023 年 3 月起,此功能在最新设备和浏览器版本中均可使用。此功能可能无法在旧设备或浏览器中使用。

willValidateElementInternals 接口的只读属性,如果元素是可提交元素且是 约束验证 的候选者,则返回 true

以下元素不适合进行约束验证:具有以下属性的元素:disabledhiddenreadonlytype=buttontype=reset 的输入元素,或任何是 <datalist> 元素或具有 <datalist> 元素祖先的元素。

如果元素是约束验证的候选者,则为 true,否则为 false

异常

NotSupportedError DOMException

如果元素的 formAssociated 属性未设置为 true,则抛出此异常。

示例

以下示例展示了一个自定义复选框组件,其中 formAssociated 设置为 truewillValidate 的值将记录到控制台。

js
class CustomCheckbox extends HTMLElement {
  static formAssociated = true;

  constructor() {
    super();
    this.internals_ = this.attachInternals();
  }

  // …
}

window.customElements.define("custom-checkbox", CustomCheckbox);

let element = document.getElementById("custom-checkbox");
console.log(element.internals_.willValidate); // true

规范

规范
HTML 标准
# dom-elementinternals-willvalidate

浏览器兼容性

BCD 表格仅在浏览器中加载