HTMLButtonElement - 操作 <button> 元素
HTMLButtonElement
接口提供了特殊属性(除了从常规 HTMLElement
接口继承的属性),用于操作 <button>
元素。
属性
从其父类 HTMLElement
继承了属性。
HTMLButtonElement.accessKey
一个 DOMString
,表示用于访问按钮的单字符键盘键。
HTMLButtonElement.autofocus
一个 Boolean
,指示控件在页面加载时是否应该具有输入焦点,除非用户覆盖它,例如通过键入不同的控件。文档中只有一个与表单相关的元素可以指定该属性。
HTMLButtonElement.disabled
一个 Boolean
,表示控件是否被禁用,这意味着它不接受任何点击。
HTMLButtonElement.form
只读
一个 HTMLFormElement
,反映与该按钮关联的表单。如果按钮是表单元素的后代,则该属性是该表单元素的 ID。
如果该按钮不是表单元素的后代,则该属性可以是与其相关的同一文档中的任何表单元素的 ID,如果没有匹配,则为 null
值。
HTMLButtonElement.formAction
一个 DOMString
,它反映了处理按钮提交的信息的资源的 URI。如果指定,则该属性将覆盖拥有该元素的 <form>
元素的 action
属性。
HTMLButtonElement.formEnctype
一个 DOMString
,反映了用于将表单提交到服务器的内容类型。如果指定,则该属性将覆盖拥有该元素的 <form>
元素的 enctype
属性。
HTMLButtonElement.formMethod
一个 DOMString
,反映了浏览器用于提交表单的 HTTP 方法。如果指定,则该属性将覆盖拥有该元素的 <form>
元素的 method
属性。
HTMLButtonElement.formNoValidate
一个 Boolean
,表示在提交表单时不对其进行验证。如果指定,则该属性将覆盖拥有该元素的 <form>
元素的 novalidate
属性。
HTMLButtonElement.formTarget
一个 DOMString
,反映了一个名称或关键字,指示在提交表单后显示收到的响应的位置。如果指定,则该属性将覆盖拥有该元素的 <form>
元素的 target
属性。
HTMLButtonElement.labels
只读
一个 NodeList
,它表示作为该按钮标签的 <label>
元素的列表。
HTMLButtonElement.menu
一个 HTMLMenuElement
,表示当 type="menu"
时,单击按钮显示的菜单元素。
HTMLButtonElement.name
一个 DOMString
,表示使用表单提交时对象的名称。如果是 HTML5,则它不能是空字符串。
HTMLButtonElement.tabIndex
一个 long
,表示该元素在 Tab 键顺序中的位置。
HTMLButtonElement.type
一个 DOMString
,表示按钮的行为。这是一个枚举属性,具有以下可能的值:
-
"submit"
:该按钮用来提交表单。如果未指定属性 HTML5,或者它是动态更改为空值或无效值,则这是默认值。 -
"reset"
:该按钮用来重置表单。 -
"button"
:该按钮什么都不做。 -
"menu"
:该按钮显示一个菜单。
HTMLButtonElement.willValidate
只读
一个 Boolean
,指示按钮是否是约束验证的候选者。如果任何条件禁止它进行约束验证,则为 false
,包括:其 type
属性为 reset
或 button
;它有一个 datalist 祖先; 或者 button
属性设置为disabled
。
HTMLButtonElement.validationMessage
只读
一个 DOMString
,表示描述控件不满足的验证约束(如果有)的本地化消息。如果控件不是约束验证的候选者( willValidate
是 false
),则该属性是空字符串,或者它满足其约束。
HTMLButtonElement.validity
只读
一个 ValidityState
,表示该按钮当前的有效状态。
HTMLButtonElement.value
一个 DOMString
,表示按钮的当前表单控件值。
方法
从其父类 HTMLElement
继承了方法。
名称 | 返回类型 | 描述 |
---|---|---|
checkValidity() |
Boolean |
类型为 reset 或 button 的元素不支持。 |
reportValidity() |
Boolean |
类型为 reset 或 button 的元素不支持。 |
setCustomValidity(in DOMString error) |
void |
类型为 reset 或 button 的元素不支持。 |
在基于 Gecko 的浏览器中,使用 :-moz-submit-invalid
伪类来根据表单的验证状态来设置提交按钮的样式。
规范
规范 | 状态 | 备注 |
---|---|---|
HTML Living Standard HTMLButtonElement 的定义 |
现行的标准 | - |
HTML 5.2 HTMLButtonElement 的定义 |
编者的草案 |
menu 属性和 type="menu" 值已被删除。 |
HTML 5.1 HTMLButtonElement 的定义 |
推荐 | 添加了以下属性:menu 。type 属性可以再多一个取值:menu 。 |
HTML5 HTMLButtonElement 的定义 |
推荐 | 属性 tabindex 和 accesskey 现在在 HTMLElement 上定义。添加了以下属性: autofocus ,formAction ,formEnctype ,formMethod ,formNoValidate ,formTarget ,labels ,validity ,validationMessage 和 willValidate 。添加了以下方法: checkValidity() ,setCustomValidity() 。type 属性不再是只读的。 |
Document Object Model (DOM) Level 2 HTML Specification HTMLButtonElement 的定义 |
已过时 | 自从 Document Object Model (DOM) Level 1 Specification 以来没有变化。 |
Document Object Model (DOM) Level 1 Specification HTMLButtonElement 的定义 |
已过时 | 初始定义。 |
桌面浏览器兼容性
特性 | Chrome | Edge | Firefox | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|---|
基础支持 | 支持 | 支持 | 1 | 支持 | 支持 | 支持 |
accessKey |
支持 | 支持 | 1 | 支持 | 支持 | 支持 |
autofocus |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
disabled |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
form |
支持 | 12 | 4 | 支持 | 支持 | 支持 |
formAction |
支持 | 12 | 41 | 支持 | 支持 | 支持 |
formEnctype |
支持 | 12 | 4 | 支持 | 支持 | 支持 |
formMethod |
支持 | 12 | 4 | 支持 | 支持 | 支持 |
formNoValidate |
支持 | 12 | 4 | 支持 | 支持 | 支持 |
formTarget |
支持 | 12 | 4 | 支持 | 支持 | 支持 |
labels |
支持 | 不支持 | 56 | 未知 | 未知 | 未知 |
menu |
不支持 | 不支持 | 不支持 | 不支持 | 不支持 | 不支持 |
name |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
tabIndex |
支持 | 支持 | 1 | 支持 | 支持 | 支持 |
type |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
validationMessage |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
validity |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
value |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
willValidate |
支持 | 12 | 1 | 支持 | 支持 | 支持 |
移动浏览器兼容性
特性 | Android | Chrome for Android | Edge mobile | Firefox for Android | IE mobile | Opera Android | iOS Safari |
---|---|---|---|---|---|---|---|
基础支持 | 支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
accessKey |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
autofocus |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
disabled |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
form |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
formAction |
支持 | 支持 | 支持 | 41 | 未知 | 支持 | 支持 |
formEnctype |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
formMethod |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
formNoValidate |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
formTarget |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
labels |
支持 | 支持 | 不支持 | 56 | 未知 | 未知 | 未知 |
menu |
不支持 | 不支持 | 不支持 | 不支持 | 未知 | 不支持 | 不支持 |
name |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
tabIndex |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
type |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
validationMessage |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
validity |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
value |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
willValidate |
支持 | 支持 | 支持 | 4 | 未知 | 支持 | 支持 |
1. 在 Firefox 56 中,实现已更新,以便当使用相关按钮提交表单时,formAction
属性按照规范返回正确的表单提交 URL(bug 1366361)。
相关链接
- 实现该接口的 HTML 元素:
<button>