--- title: HTMLButtonElement slug: Web/API/HTMLButtonElement tags: - API - HTML DOM translation_of: Web/API/HTMLButtonElement ---
{{APIRef("HTML DOM")}}

HTMLButtonElement 接口提供操作button元素 (除了 {{HTMLElement("button")}} 对象,这个接口对继承了该对象的元素也有效)的属性和方法。

属性

从父对象{{domxref("HTMLElement")}}继承的属性。

名字 类型 描述
accessKey {{domxref("DOMString")}} 一个键盘字符构成的字符串,表明用哪个键盘字符能够访问这个按钮。
autofocus {{domxref("Boolean")}} 这个控件是否可以在页面加载时自动得到焦点。但用户选择了其他焦点除外。只有和表单关联的按钮该特性才有效。
disabled {{domxref("Boolean")}} 这个控件是否被禁用。被禁用的控件不接受任何输入和点击。
form {{readonlyInline}} {{domxref("HTMLFormElement")}} 这个按钮所关联的表单元素。如果这个按钮是一个表单元素的后代元素,那么这个属性的值就是那个表单元素。
如果这个按钮不是一个表单元素的后代元素,那么这个数学可以是任意同文档中的表单元素,或者是 null 表明它没有关联任何表单。
formAction {{domxref("DOMString")}} 一个处理提交信息的URI资源地址。如果指定该属性,会覆盖拥有该元素的{{HTMLElement("form")}} 元素的{{htmlattrxref("action", "form")}} 属性。
formEncType {{domxref("DOMString")}} 表单要提交给服务器处理的内容的类型。如果指定该属性,会覆盖拥有该元素的{{HTMLElement("form")}} 元素的{{htmlattrxref("enctype", "form")}} 属性。
formMethod {{domxref("DOMString")}} 浏览器提交表单内容的HTTP方法。如果指定该属性,会覆盖拥有该元素的{{HTMLElement("form")}} 元素的.{{htmlattrxref("method", "form")}}属性。
formNoValidate {{domxref("Boolean")}} 表明这个表单提交时是否需要验证。如果指定该属性,会覆盖拥有该元素的{{HTMLElement("form")}} 元素的.{{htmlattrxref("novalidate", "form")}}属性。
formTarget {{domxref("DOMString")}} 一个名字或关键字,用于表明显示服务器响应的页面。如果指定该属性,会覆盖拥有该元素的{{HTMLElement("form")}} 元素的.{{htmlattrxref("target", "form")}}属性。
labels {{readonlyInline}} {{domxref("NodeList")}} 一个{{HTMLElement("label")}} 元素表,说明哪些标签是归属这个button的。
menu {{experimental_inline}} {{domxref("HTMLMenuElement")}} 如果该按钮type="menu",被点击的时候应该显示的菜单。
name {{domxref("DOMString")}} 提交到服务器时表单描述该对象的name。 {{HTMLVersionInline(5)}} 如果指定该属性,不能使用空字符串 。
tabIndex long 用于表示该元素在tab按钮跳动过程中的序号的一个数字。
type {{domxref("DOMString")}} 表明按钮的行为。这个属性是枚举类型,可以是以下的值:
  • "submit": 这个按钮会提交表单。如果不指定该属性,这是默认值。{{HTMLVersionInline(5)}} 中可以动态改为空值或者无效值。
  • "reset": 用于重置(清空)表单。
  • "button": 什么都不做的按钮。通常通过Javascript挂载事件。
  • "menu": 显示菜单的按钮 {{experimental_inline}}。
validationMessage {{readonlyInline}} {{domxref("DOMString")}} 报告该控件不满足验证要求的,提示给用户的看的信息。如果这个控件没有验证约束(willValidate值为false),或者满足验证的要求,那么这个属性为空字符串。
validity {{readonlyInline}} {{domxref("ValidityState")}} 这个控件当前的验证状态。
value {{domxref("DOMString")}} 这个控件当前的表单值。
willValidate {{domxref("Boolean")}} 表明这个按钮是否需要在提交前进行验证。如果不需要,这个属性值为false

方法

从父对象{{domxref("HTMLElement")}}继承的方法。

名字 返回类型 描述
checkValidity() {{domxref("Boolean")}} 对按钮元素不支持。
setCustomValidity(in DOMString error) void 对按钮元素不支持。

在基于Gecko的浏览器中,在表单验证时会使用{{cssxref(":-moz-submit-invalid")}} 伪类修饰提交按钮。

规范

规范 状态 注释
{{SpecName('HTML WHATWG', "text-level-semantics.html#the-a-element", "HTMLAnchorElement")}} {{Spec2('HTML WHATWG')}} 新添加的属性: menu
type 属性可以使用的新的值"menu"
{{SpecName('HTML5 W3C', "text-level-semantics.html#the-a-element", "HTMLAnchorElement")}} {{Spec2('HTML5 W3C')}} 属性tabindexaccesskey被定义在{{domxref("HTMLElement")}}中。
添加了下列属性:autofocus, formAction, formEncType, formMethod, formNoValidate, formTarget, labels, validity, validationMessagewillValidate
添加了下列方法:checkValidity(), setCustomValidity().
type 属性不再是只读的。
{{SpecName('DOM2 HTML', 'html.html#ID-ID-48250443', 'HTMLAnchorElement')}} {{Spec2('DOM2 HTML')}} 和 {{SpecName("DOM1")}}一样
{{SpecName('DOM1', 'level-one-html.html#ID-48250443', 'HTMLAnchorElement')}} {{Spec2('DOM1')}} 最初的定义。

浏览器兼容性

{{CompatibilityTable}}

特性 Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
基本支持 {{CompatVersionUnknown}} {{CompatGeckoDesktop(1.0)}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
与表单相关的属性 {{CompatVersionUnknown}} {{CompatGeckoDesktop(2.0)}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
labels {{CompatVersionUnknown}} {{CompatNo}} {{unimplemented_inline(556743)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
menu & type="menu" {{experimental_inline}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}
特性 Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
基本支持 {{CompatVersionUnknown}} {{CompatGeckoMobile(1.0)}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
与表单相关的属性 {{CompatVersionUnknown}} {{CompatGeckoDesktop(2.0)}} {{CompatVersionUnknown}} {{CompatVersionUnknown}} {{CompatVersionUnknown}}
labels {{CompatVersionUnknown}} {{CompatNo}}{{unimplemented_inline(556743)}} {{CompatUnknown}} {{CompatUnknown}} {{CompatUnknown}}
menu & type="menu" {{experimental_inline}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}} {{CompatNo}}

另见