<output>:output 元素

Baseline 已广泛支持

此特性已成熟稳定,适用于多种设备和浏览器版本。自 2018 年 10 月起,它已在各浏览器中可用。

<output> HTML 元素是一个容器元素,网站或应用程序可以从中注入计算结果或用户操作的输出。

属性

此元素包含全局属性

for

其他元素的 id 的空格分隔列表,表明这些元素为计算提供了输入值(或以其他方式影响了计算)。

form

与输出关联的 <form> 元素(它的表单所有者)。此属性的值必须是同一文档中 <form>id。(如果未设置此属性,则 <output> 与其父级 <form> 元素(如果存在)相关联。)

此属性允许您将 <output> 元素与文档中的任何位置的 <form> 关联,而不仅仅是 <form> 内部。它还可以覆盖父级 <form> 元素。表单提交时,<output> 元素的名称和内容不会被提交。

name

该元素的名称。在 form.elements API 中使用。

<output> 的值、名称和内容在表单提交时不会被提交。

无障碍

许多浏览器将此元素实现为 aria-live 区域。因此,辅助技术会宣布其中发布的 UI 交互结果,而无需将焦点从产生这些结果的控件移开。

示例

在以下示例中,表单提供了一个值范围在 0100 之间的滑块,以及一个可以输入第二个数字的 <input> 元素。当任何控件的值发生变化时,这两个数字会被加在一起,并将结果显示在 <output> 元素中。

html
<form id="example-form">
  <input type="range" id="b" name="b" value="50" /> +
  <input type="number" id="a" name="a" value="10" /> =
  <output name="result" for="a b">60</output>
</form>
js
const form = document.getElementById("example-form");
const a = form.elements["a"];
const b = form.elements["b"];
const result = form.elements["result"];

function updateResult() {
  const aValue = a.valueAsNumber;
  const bValue = b.valueAsNumber;
  result.value = aValue + bValue;
}

form.addEventListener("input", updateResult);

updateResult();

结果

技术摘要

内容类别 流程内容短语内容已列出可标记可重置 与表单关联的元素、可感知内容。
允许内容 短语内容.
标签省略 无,起始标签和结束标签都必须存在。
允许父级 任何接受短语内容的元素。
隐式 ARIA 角色 status
允许的 ARIA 角色 任意
DOM 接口 HTMLOutputElement

规范

规范
HTML
# the-output-element

浏览器兼容性