W3cubDocs

/DOM

HTMLButtonElement

The HTMLButtonElement interface provides properties and methods (beyond the <button> object interface it also has available to them by inheritance) for manipulating the layout and presentation of button elements.

Properties

Inherits properties from its parent, HTMLElement.

HTMLButtonElement.accessKey
Is a DOMString indicating the single-character keyboard key to give access to the button.
HTMLButtonElement.autofocus
Is a Boolean indicating whether or not the control should have input focus when the page loads, unless the user overrides it, for example by typing in a different control. Only one form-associated element in a document can have this attribute specified.
HTMLButtonElement.disabled
Is a Boolean indicating whether or not the control is disabled, meaning that it does not accept any clicks.
HTMLButtonElement.form Read only
Is a HTMLFormElement reflecting the form that this button is associated with. If the button is a descendant of a form element, then this attribute is the ID of that form element.
If the button is not a descendant of a form element, then the attribute can be the ID of any form element in the same document it is related to, or the null value if none matches.
HTMLButtonElement.formAction
Is a DOMString reflecting the URI of a resource that processes information submitted by the button. If specified, this attribute overrides the action attribute of the <form> element that owns this element.
HTMLButtonElement.formEncType
Is a DOMString reflecting the type of content that is used to submit the form to the server. If specified, this attribute overrides the enctype attribute of the <form> element that owns this element.
HTMLButtonElement.formMethod
Is a DOMString reflecting the HTTP method that the browser uses to submit the form. If specified, this attribute overrides the method attribute of the <form> element that owns this element.
HTMLButtonElement.formNoValidate
Is a Boolean indicating that the form is not to be validated when it is submitted. If specified, this attribute overrides the novalidate attribute of the <form> element that owns this element.
HTMLButtonElement.formTarget
Is a DOMString reflecting a name or keyword indicating where to display the response that is received after submitting the form. If specified, this attribute overrides the target attribute of the <form> element that owns this element.
HTMLButtonElement.labels Read only
Is a NodeList that represents a list of <label> elements that are labels for this button.
HTMLButtonElement.menu
Is a HTMLMenuElement representing the menu element to be displayed if the button is clicked and is of type="menu".
HTMLButtonElement.name
Is a DOMString representing the name of the object when submitted with a form. HTML5 If specified, it must not be the empty string.
HTMLButtonElement.tabIndex
Is a long that represents this element's position in the tabbing order.
HTMLButtonElement.type
Is a DOMString indicating the behavior of the button. This is an enumerated attribute with the following possible values:
  • "submit": The button submits the form. This is the default value if the attribute is not specified, HTML5 or if it is dynamically changed to an empty or invalid value.
  • "reset": The button resets the form.
  • "button": The button does nothing.
  • "menu": The button displays a menu.
HTMLButtonElement.validationMessage Read only
Is a DOMString representing the localized message that describes the validation constraints that the control does not satisfy (if any). This attribute is the empty string if the control is not a candidate for constraint validation (willValidate is false), or it satisfies its constraints.
HTMLButtonElement.validity Read only
Is a ValidityState representing the validity states that this button is in.
HTMLButtonElement.value
Is a DOMString representing the current form control value of the button.
HTMLButtonElement.willValidate Read only
Is a Boolean indicating whether the button is a candidate for constraint validation. It is false if any conditions bar it from constraint validation.

Methods

Inherits methods from its parent, HTMLElement.

Name Return Type Description
checkValidity() Boolean Not supported for button elements.
setCustomValidity(in DOMString error) void Not supported for button elements.

WIth Gecko-based browser, use the :-moz-submit-invalid pseudo-class to style submit buttons based on the validation of a form.

Specifications

Specification Status Comment
WHATWG HTML Living Standard
The definition of 'HTMLButtonElement' in that specification.
Living Standard The following attribute has been added: menu.
The type attribute can take one more value, "menu".
HTML5
The definition of 'HTMLButtonElement' in that specification.
Recommendation The attributes tabindex and accesskey, are now defined on HTMLElement.
The following attributes have been added: autofocus, formAction, formEncType, formMethod, formNoValidate, formTarget, labels, validity, validationMessage, and willValidate.
The following methods have been added: checkValidity(), setCustomValidity().
The type attribute is no more read-only.
Document Object Model (DOM) Level 2 HTML Specification
The definition of 'HTMLButtonElement' in that specification.
Recommendation No change from Document Object Model (DOM) Level 1 Specification.
Document Object Model (DOM) Level 1 Specification
The definition of 'HTMLButtonElement' in that specification.
Recommendation Initial definition.

Browser compatibility

Feature Chrome Edge Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Basic support (Yes) (Yes) 1.0 (1.7 or earlier) (Yes) (Yes) (Yes)
Form-related attributes (Yes) (Yes) 4.0 (2.0) (Yes) (Yes) (Yes)
labels (Yes) No support No support[1] ? ? ?
menu & type="menu" No support No support No support No support No support No support
Feature Android Edge Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Basic support (Yes) (Yes) 1.0 (1.0) (Yes) (Yes) (Yes)
Form-related attributes (Yes) (Yes) 4.0 (2.0) (Yes) (Yes) (Yes)
labels (Yes) No support No support[1] ? ? ?
menu & type="menu" No support No support No support No support No support No support

[1] This feature is not implemented yet. See bug 556743.

See also

  • HTML element implementing this interface: <button>

© 2005–2017 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/HTMLButtonElement