【HTML DOM】fieldset要素のdisabledプロパティの使い方とサンプルコード
fieldsetのdisabledプロパティとは
HTML DOMのfieldset要素が持つdisabledプロパティは、そのfieldset内に含まれるフォーム部品をまとめて無効化するためのプロパティです。trueを設定すれば配下の要素がすべて無効になり、falseを設定すれば有効になります(初期状態は有効)。無効化された要素は多くのブラウザでグレー表示となり、ユーザーはクリックや文字入力を行えません。
基本構文
disabledプロパティに値を設定する場合は次のように記述します。
fieldsetObj.disabled = true|false
現在の設定値を取得する場合は以下のとおりです。
fieldsetObj.disabled
サンプルコード
それでは、fieldsetのdisabledプロパティの動作を確認できる具体例を見ていきましょう。
<!DOCTYPE html>
<html>
<head>
<script>
function FieldDisable() {
document.getElementById("FieldSet1").disabled = true;
}
function FieldEnable() {
document.getElementById("FieldSet1").disabled = false;
}
</script>
</head>
<body>
<h1>サンプルFORM</h1>
<form>
<fieldset id="FieldSet1">
<legend>ユーザーデータ:</legend>
名前:<input type="text"><br>
住所:<input type="text"><br>
年齢:<input type="text">
</fieldset>
</form>
<br>
<button onclick="FieldEnable()">Enable</button>
<button onclick="FieldDisable()">Disable</button>
<p>Enableボタンでfieldsetを有効化し、Disableボタンで無効化できます</p>
</body>
</html>実行結果
上記コードを実行すると、次のような画面が表示されます。

[Disable]ボタンをクリックした場合は以下のようになります。

コードの解説
まず、id属性に「FieldSet1」を設定した<fieldset>要素でフォーム内の項目をグループ化し、名前・住所・年齢の3つのテキスト入力欄を配置しています。
<form> <fieldset id="FieldSet1"> <legend>ユーザーデータ:</legend> 名前:<input type="text"><br> 住所:<input type="text"><br> 年齢:<input type="text"> </fieldset> </form>
続いて、「Enable」「Disable」の2つのボタンを作成し、それぞれクリック時にFieldEnable()関数とFieldDisable()関数が実行されるようにしています。
<button onclick="FieldEnable()">Enable</button> <button onclick="FieldDisable()">Disable</button>
FieldDisable()関数はfieldsetのdisabledプロパティにtrueを、FieldEnable()関数はfalseをそれぞれ代入します。これにより、対象のfieldset内にあるすべての入力部品をワンクリックで無効化・有効化できる仕組みです。
function FieldDisable() {
document.getElementById("FieldSet1").disabled = true;
}
function FieldEnable() {
document.getElementById("FieldSet1").disabled = false;
}応用のヒント
disabledプロパティは値の読み取りにも対応しているため、「現在fieldsetが無効かどうか」を条件分岐に利用することも可能です。利用規約への同意前に入力フォームをロックしたい場面や、二重送信を防止したい場面など、実務でも幅広く活用できます。
-
HTML DOM Fieldset nameプロパティとは?使い方とサンプルコードを解説
HTML DOM の Fieldset name プロパティは、<fieldset> 要素の name 属性値を取得または設定するために使用されます。name 属性は、フォーム送信後にデータを識別するだけでなく、JavaScript からフォーム要素を参照する場合にも役立ちます。 構文 Fieldset name プロパティを設定する場合の構文は以下の通りです。 fieldsetObject.name = name ここで指定する「name」は、フィールドセットに付与したい名前です。値を取得したい場合は、代入を行わずに fieldsetObject.name を参照します。 サ
-
HTML DOM Textarea disabledプロパティの使い方とサンプルコード
HTML DOM の Textarea disabled プロパティは、HTML ドキュメント内の textarea 要素が無効(disabled)状態かどうかを取得したり、設定したりするためのプロパティです。ユーザーの操作状況に応じてフォームの入力欄を一時的に使用不可にしたい場合などに活用できます。 構文 disabled プロパティの基本的な構文は以下の通りです。 1. disabled の値を取得する場合 object.disabled 2. disabled の値を設定する場合 object.disabled = true | false true を指定するとテキストエリアが無効化さ