--- title: HTMLButtonElement slug: Web/API/HTMLButtonElement tags: - API - HTML DOM - HTMLButtonElement - Interface - Reference - インターフェイス translation_of: Web/API/HTMLButtonElement ---
{{APIRef("HTML DOM")}}

HTMLButtonElement インターフェイスは、 ({{domxref("HTMLElement")}} から継承したものより詳細に) {{HTMLElement("button")}} 要素を操作するためのプロパティやメソッドを提供します。

{{InheritanceDiagram(600, 120)}}

プロパティ

親である {{domxref("HTMLElement")}} からプロパティを継承しています。

{{domxref("HTMLButtonElement.accessKey")}}
{{domxref("DOMString")}} で、ボタンにアクセスするためのキーボードの1文字のキーを示します。
{{domxref("HTMLButtonElement.autofocus")}}
{{jsxref("Boolean")}} で、ページが読み込みの際、ユーザーが異なるコントロールに入力するなどで上書きをしない限り、コントロールが入力フォーカスを持つべきかどうかを示します。文書中のフォーム関連要素の中で、この属性を指定できるのは1つだけです。
{{domxref("HTMLButtonElement.disabled")}}
{{jsxref("Boolean")}} で、コントロールが無効か否か、つまりクリックを受け付けるかどうかを示します。
{{domxref("HTMLButtonElement.form")}} {{readonlyInline}}
{{domxref("HTMLFormElement")}} で、このボタンが関連付けられているフォームを反映します。ボタンがフォームの子孫要素である場合は、この属性はフォーム要素の ID になります。
ボタンがフォーム要素の子孫でない場合は、属性は同じ文書内の任意のフォーム要素の ID になる可能性があり、また一致するものがなければ null 値になります。
{{domxref("HTMLButtonElement.formAction")}}
{{domxref("DOMString")}} で、ボタンによって送信された情報を処理するリソースの URI を反映します。指定された場合は、この属性はこの要素のオーナーである {{HTMLElement("form")}} 要素の {{htmlattrxref("action", "form")}} 属性を上書きします。
{{domxref("HTMLButtonElement.formEnctype")}}
{{domxref("DOMString")}} で、サーバーにフォームを送信するために使用されるコンテンツの型を反映します。指定された場合は、この属性はこの要素のオーナーである {{HTMLElement("form")}} 要素の {{htmlattrxref("enctype", "form")}} 属性を上書きします。
{{domxref("HTMLButtonElement.formMethod")}}
{{domxref("DOMString")}} で、ブラウザーがフォームを送信するために使用する HTTP メソッドを反映します。指定された場合は、この属性はこの要素のオーナーである {{HTMLElement("form")}} 要素の {{htmlattrxref("method", "form")}} 属性を上書きします。
{{domxref("HTMLButtonElement.formNoValidate")}}
{{jsxref("Boolean")}} で、フォームの送信時に値の検証が行われないことを示します。指定された場合は、この属性はこの要素のオーナーである {{HTMLElement("form")}} 要素の {{htmlattrxref("novalidate", "form")}} 属性を上書きします。
{{domxref("HTMLButtonElement.formTarget")}}
{{domxref("DOMString")}} で、フォームに送信した後で受信するレスポンスを表示する場所を示す名前またはキーワードを反映します。指定された場合は、この属性はこの要素のオーナーである {{HTMLElement("form")}} 要素の {{htmlattrxref("target", "form")}} 属性を上書きします。
{{domxref("HTMLButtonElement.labels")}} {{readonlyInline}}
{{domxref("NodeList")}} で、このボタンのラベルとなる {{HTMLElement("label")}} 要素を表します。
{{domxref("HTMLButtonElement.menu")}} {{experimental_inline}}
{{domxref("HTMLMenuElement")}} で、ボタンが type="menu" である場合にクリックした場合に表示されるメニュー要素を表します。
{{domxref("HTMLButtonElement.name")}}
{{domxref("DOMString")}} で、フォームを送信したときのオブジェクトの名前を表します。 {{HTMLVersionInline(5)}} 指定された場合は、空文字列にすることはできません。
{{domxref("HTMLButtonElement.tabIndex")}}
long で、タブ順でのこの要素の位置を表します。
{{domxref("HTMLButtonElement.type")}}
{{domxref("DOMString")}} で、このボタンの動作を示します。これは列挙型属性で、以下の値を取ることができます。
{{domxref("HTMLButtonElement.willValidate")}} {{readonlyInline}}
{{jsxref("Boolean")}} で、ボタンが制約検証の候補になるかどうかを示します。制約検証が阻止される場合は false となり、これには type プロパティが reset または button である場合、祖先に {{HTMLElement("datalist")}} がある場合、 disabled プロパティが true に設定されている場合が含まれます。
{{domxref("HTMLButtonElement.validationMessage")}} {{readonlyInline}}
{{domxref("DOMString")}} で、 (もしあれば) 制約検証でコントロールが合格しなかった場合のローカライズされたメッセージを表現します。この属性はコントロールが制約検証の候補にならない場合 (willValidatefalse の場合) や、制約を満たしている場合は空文字列になります。
{{domxref("HTMLButtonElement.validity")}} {{readonlyInline}}
{{domxref("ValidityState")}} で、このボタンがある妥当性の状態を表します。
{{domxref("HTMLButtonElement.value")}}
{{domxref("DOMString")}} で、ボタンの現在のフォームコントロールの値を表します。

メソッド

親である {{domxref("HTMLElement")}} からメソッドを継承しています。

名称 返却型 説明
checkValidity() {{jsxref("Boolean")}} リセットまたはボタン要素は対応していません。
reportValidity() {{jsxref("Boolean")}} リセットまたはボタン要素は対応していません。
setCustomValidity(in DOMString error) void リセットまたはボタン要素は対応していません。

Gecko を基盤としたブラウザーでは、 {{cssxref(":-moz-submit-invalid")}} 擬似クラスを用いてフォームの妥当性に基いた送信ボタンの装飾をすることができます。

仕様書

仕様書 状態 備考
{{SpecName('HTML WHATWG', "#htmlbuttonelement", "HTMLButtonElement")}} {{Spec2('HTML WHATWG')}}
{{SpecName('HTML5.2', "sec-forms.html#htmlbuttonelement", "HTMLButtonElement")}} {{Spec2('HTML5.2')}} menu 属性および type="menu" 値が削除された。
{{SpecName('HTML5.1', "sec-forms.html#htmlbuttonelement-htmlbuttonelement", "HTMLButtonElement")}} {{Spec2('HTML5.1')}} menu 属性が追加された。
type 属性でもう一つ、 "menu" の値が取れるようになった。
{{SpecName('HTML5 W3C', "forms.html#the-button-element", "HTMLButtonElement")}} {{Spec2('HTML5 W3C')}} tabindex および accesskey 属性が {{domxref("HTMLElement")}} で定義されるようになった。
autofocus, formAction, formEnctype, formMethod, formNoValidate, formTarget, labels, validity, validationMessage, willValidate 属性が追加された。
checkValidity(), setCustomValidity() メソッドが追加された。
type 属性が読取専用ではなくなった。
{{SpecName('DOM2 HTML', 'html.html#ID-34812697', 'HTMLButtonElement')}} {{Spec2('DOM2 HTML')}} {{SpecName("DOM1")}} から変更なし
{{SpecName('DOM1', 'level-one-html.html#ID-34812697', 'HTMLButtonElement')}} {{Spec2('DOM1')}} 初回定義

ブラウザーの互換性

{{Compat("api.HTMLButtonElement")}}

関連情報