HTMLOutputElement - 操作 <output> 元素

HTMLOutputElement 接口提供了属性和方法(除了通过继承 HTMLElement 接口获得的常规方法和属性),用于操作 <output> 元素的布局和表示。

属性

该接口还从其父接口 HTMLElement 继承了属性。

HTMLOutputElement.defaultValue

一个 DOMString,表示元素的默认值,初始值是空字符串。

HTMLOutputElement.form 只读

一个 HTMLFormElement,表示与控件关联的表单,反映了form HTML 属性(如果已定义)。

HTMLOutputElement.htmlFor 只读

一个 DOMTokenList,反映 for HTML 属性,包含同一文档中其他有助于(或以其他方式影响)其他元素 ID 的列表计算出的 value

HTMLOutputElement.labels 只读

一个包含 <label> 元素的 NodeList,表示该元素相关联的标签。

HTMLOutputElement.name

一个 DOMString,反映了 name HTML 属性,其中包含与表单数据一起提交的控件的名称。

HTMLOutputElement.type 只读

一个 DOMString,固定为 output

HTMLOutputElement.validationMessage 只读

一个 DOMString,表示本地化消息,描述了控件不满足的验证约束(如果有)。如果控件不是约束验证的候选者(willValidatefalse)或满足其约束,则为空字符串。

HTMLOutputElement.validity 只读

一个 ValidityState,表示此元素所在的有效性状态。

HTMLOutputElement.value

一个 DOMString,表示元素内容的值。行为类似于 Node.textContent 属性。

HTMLOutputElement.willValidate 只读

一个 Boolean,表示元素是否为约束验证的候选者。

方法

该接口还继承自其父接口 HTMLElement 的方法。

HTMLOutputElement.checkValidity()

检查元素的有效性,并返回表示检查结果的 Boolean

HTMLOutputElement.reportValidity()

此方法将有关元素约束的问题(如果有)报告给用户。如果有问题,则在元素上触发 invalid 事件,并返回 false。如果没有问题,则返回 true

当报告问题时,用户代理可以将元素放在焦点上并更改文档的滚动位置,或执行一些其他操作以引起用户注意。如果此元素一次遇到多个问题,则用户代理可能会报告多个约束违例。如果该元素未渲染,则用户代理可能会运行脚本错误,而不是通知用户。

HTMLOutputElement.setCustomValidity()

设置元素的自定义有效性消息。如果此消息不是空字符串,则该元素存在自定义有效性错误,并且不验证。

模式

该元素的行为为以下两种模式之一:default 模式和 value 模式。

default 模式

最初,元素处于默认模式,因此元素的内容既代表元素的值,又代表其默认值。

如果以任何方式更改元素的后代时元素处于默认模式,则将 defaultValue 属性设置为 textContent 属性的值。

重置表单会将元素置于默认模式,并将 textContent 属性设置为 defaultValue 属性的值。

value 模式

当设置了 value 属性的内容时,该元素进入 value 模式。否则,value 属性的行为类似于 textContent 属性的行为。当元素处于 value 模式时,只能通过 defaultValue 属性访问默认值。

规范

规范 状态 备注
HTML Living Standard
HTMLOutputElement 的定义
现行的标准 -
HTML 5.1
HTMLOutputElement 的定义
推荐 没有变化
HTML5
HTMLOutputElement 的定义
推荐 初始定义

桌面浏览器兼容性

特性ChromeEdgeFirefoxInternet ExplorerOperaSafari
基础支持 支持≤184 不支持 支持5
checkValidity 支持144 不支持 支持5
defaultValue 支持144 不支持 支持5
form 支持144 不支持 支持5
htmlFor 支持1144 不支持 支持25
labels 支持1856 不支持 支持 支持
name 支持144 不支持 支持5
reportValidity40144 不支持275
setCustomValidity 支持144 不支持 支持5
type 支持144 不支持 支持5
validationMessage 支持144 不支持 支持5
validity 支持144 不支持 支持5
value 支持144 不支持 支持5
willValidate 支持144 不支持 支持5

移动浏览器兼容性

特性AndroidChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
基础支持 支持 支持 未知4 未知 支持 不支持
checkValidity 支持 支持 未知4 未知 支持 不支持
defaultValue 支持 支持 未知4 未知 支持 不支持
form 支持 支持 未知4 未知 支持 不支持
htmlFor 支持1 支持1 未知4 未知 支持2 不支持
labels 支持 支持 未知56 未知 未知 不支持
name 支持 支持 未知4 未知 支持 不支持
reportValidity4040 未知4 未知27 不支持
setCustomValidity 支持 支持 未知4 未知 支持 不支持
type 支持 支持 未知4 未知 支持 不支持
validationMessage 支持 支持 未知4 未知 支持 不支持
validity 支持 支持 未知4 未知 支持 不支持
value 支持 支持 未知4 未知 支持 不支持
willValidate 支持 支持 未知4 未知 支持 不支持

1. 在 Chrome 50 之前,此属性返回了废弃的子 DOMSettableTokenList 而不是 DOMTokenList

2. 在 Opera 37 之前,此属性返回了废弃的子 DOMSettableTokenList 而不是 DOMTokenList

3. 在 Samsung Internet 5.0 之前,此属性返回了废弃的子 DOMSettableTokenList 而不是 DOMTokenList

相关链接

  • 实现此接口的 HTML 元素:<output>