【JavaScriptで実現する】ラジオボタンの選択時のイベント作成例

HTMLではラジオボタンやチェックボックスなど、アンケートなどの統計に便利なフォームを作成することができます。

しかし実際に実用的なフォームを作成するには、ラジオボタンにJavaScriptを組み込むことが必須になります。

今回は

・ラジオボタンにJavaScriptを組み込む方法
・ラジオボタン選択時に便利なJavaScriptのイベント

の以上2つについて紹介していきます!

ラジオボタンにJavaScriptのイベントを組み込む方法

具体例を紹介する前に、まずはラジオボタンとJavaScriptの基本を確認しておきましょう。

ラジオボタンを作成する

まずはラジオボタンを作成します。ラジオボタンはHTMLのbodyタグ内にformタグを作成し、その中に書いていきます。

label属性idで結びつけ、文字の上をクリックしてもラジオボタンが選択できるようにする、便利な要素です。

またページ読み込み時にどちらかを選択済みにするchecked属性も記述しておくと良いでしょう。

完成図

注意
ラジオボタンはいずれか一つを選択します。選択肢が複数チェックできないようになっているか確認しましょう。

JavaScriptのイベントを作成する

次にJavaScriptを記述してイベントを作成します。別ファイルに記述する方法でも、scriptタグを用いる方法でも、どちらでも構いません。ここではscriptタグを用いてHTML内に記述しました。

作成したcheck_formでは、変数valueにラジオボタンの値を代入し、ひとつずつチェックが入っているか確認します。

一つずつ確認する動作はfor文で行い、実際にチェックが入っていた場合はif文にひっかかって処理が行われます。

動作が正確に行われているか確認するために、コンソールに値を出力しました。

ラジオボタンとイベントを結びつける

最後にラジオボタンにJavaScriptのイベントを組み込みます。

ラジオボタンでJavaScriptの関数を実行させるには、ラジオボタンのタグ内に、onchange属性など変化を読み取るイベントハンドラを記述します。

onchange属性ラジオボタンの選択肢全てに記述し、属性の値にはJavaScriptで作成した関数(イベント)の名前を記述します。

動作の確認はChromeでファイルを読み込み、F12キーをクリックして確認します。

・女が選択されたとき >> male
・男が選択されたとき >> feamale
MEMO
イベントハンドラ
クリックや、マウスの動きなど、一定の操作があった場合に特定の処理を実行する機能のこと

ラジオボタン選択時に便利なJavaScriptイベントの具体例

基本が確認できたところで、他にも使えそうなイベントを作成してみましょう。

選択肢未選択の場合は送信しない

もっと実用的なフォームを作成するには、入力項目を必須にするrequired属性を指定します。値が3つ以上あるので、一番先頭のinputタグ内に記述するか、全てに記述しましょう。

最後に送信ボタンを作成します。type属性の値は必ずsubmitに指定してください。このsubmitとrequiredが連動して、未入力を感知します。

何も選択しない状態で送信すると、エラーメッセージが表示されます。
このエラーメッセージはブラウザごとに異なります。

まとめ

今回はラジオボタン選択時にJavaScriptのイベントと結びつける方法をご紹介しました。HTMLやCSSに慣れ、応用的なものを作りたいという方にはおすすめの内容です。

また今回ご紹介したコードは全て装飾を行っていない初期値のままです。さらに余裕がある方は、ユーザビリティを高めるためにスタイルシートで装飾を行ってみましょう。

参考文献:
GlobalEventHandlers – MDN Web Docs

BLOGコンテンツをパーソナライズします

あなたは現在「プログラミング学習者」ですか?