ElementInternals:willValidate 属性

Baseline 已广泛支持

此功能已成熟,并可在许多设备和浏览器版本上运行。自 2023 年 3 月以来,它已在各种浏览器中可用。

ElementInternals 接口的只读属性 willValidate 返回一个布尔值,指示该元素是否是可提交元素并且是 约束验证 的候选者。

不被视为约束验证候选者的元素包括那些具有以下属性的元素:disabledhiddenreadonly,类型为 type=buttontype=reset 的输入元素,或者任何 <datalist> 元素或具有 <datalist> 元素祖先的元素。

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

异常

NotSupportedError DOMException

如果元素没有将其 formAssociated 属性设置为 true,则抛出此异常。

示例

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

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

浏览器兼容性