速報

imgproxyのICO処理にコード実行のおそれ|4.0.16だけでは残る問題を確認

CATEGORY

【JavaScript】選択されたラジオボタンの値を取得する

※本ページのリンクにはプロモーションが含まれています。

【JavaScript】選択されたラジオボタンの値を取得する

目次

本記事では、JavaScriptで選択されたラジオボタンの値を取得する方法をご紹介しています。

選択されたラジオボタンの値によって分岐する処理などを作成する際に参考していただければと思います。

では、解説していきます。

スポンサーリンク

ラジオボタンの要素を取得する

要素を取得する方法は選択肢がいくつかありますが、今回はフォーム要素を扱いますので「document」の「forms」プロパティを使用して、取得したフォームの中からラジオボタンを取り出す方法でいきたいと思います。

HTMLは下記のようなシンプルな感じです。属性も最低限のものだけ指定しています。

HTML

<div id="app">
    <form>
        <label><input type="radio" name="radio" value="javascript">JavaScript</label>
        <label><input type="radio" name="radio" value="jquery">jQuery</label>
        <label><input type="radio" name="radio" value="html">HTML</label>
        <label><input type="radio" name="radio" value="css">CSS</label>
        <button type="button" name="submit">送信</button>
    </form>
</div>

続いてスクリプトを。いったんフォームを取得してラジオボタンを取り出すところまで書いてみます。

JS

//フォーム取得
let form = document.forms[0];
//ラジオボタン取得
let radio = form.radio;

console.log(radio);

上記を実行すると、HTMLで作成した4つのラジオボタンがコンソールに出力されるかと思います。ちゃんとラジオボタンのグループが取得できていますね。

ただ、実行結果を見てわかる通り、取得したラジオボタンは複数(4つ)あります。ラジオボタンはグループの中から一つを選択する場合に使用される要素だからですね。

選択状態にあるラジオ(selected)の値を取得するためには、各ラジオボタンを一つずつ走査し、チェック状態を確認する必要あります。次項ではその処理を作っていきましょう。

選択されたラジオボタンの値を取得する

前項ではラジオボタンを取得するところまでスクリプトを書きました。続いて選択されたラジオボタンの値を取得する処理を作成していきましょう。ここでは「送信」ボタンが押された際に選択されたラジオボタンの値を取得したいと思います。

JS

//フォーム取得
let form = document.forms[0];
//ラジオボタン取得
let radio = form.radio;
//「送信」ボタン取得
let submit = form.submit;

//「送信」ボタンがクリックされたら
submit.addEventListener('click', ()=>{

    //ラジオボタンの数分繰り返し処理
    for(let i = 0; i < radio.length; i++){

	//ラジオボタンがチェック状態であれば
        if(radio[i].checked){
	    //コンソールに値を出力する
            console.log(radio[i].value);
        }
    }
}, false);

上記を実行後にラジオボタンを選択して「送信」ボタンをクリックすると、選択されたラジオボタンの値がコンソールに出力されます。

スポンサーリンク

最後に

ラジオボタンの値によって処理を分岐するスクリプトは書く機会が多いです。表示するコンテンツを変えたり、フォーム項目を切り替えたり……と用途は様々です。

ささっと書けるようになっておくと後々便利ですので、ぜひ覚えていってくださいね!

以上、JavaScriptで選択されたラジオボタンの値を取得する方法のご紹介でした!

この記事を書いた人

Ryohei

Webエンジニア / アプリ開発者 / 技術ブログ運営者

福岡のWeb制作会社に勤務するWebエンジニアです。10年以上にわたりWeb制作・開発に携わり、ヒアリングや進行管理から、コーディング、CMSの構築、システム開発、サーバーの構築・保守・運用まで、Webサイト制作の工程を幅広く担当しています。Webサイトは、これまでに100以上の構築・保守を手がけてきました。

個人でもWebサイトの制作・改修やWebアプリの開発・運用を行い、AIを活用した開発にも取り組んでいます。近年はWebセキュリティにも注力しています。

2015年から技術メディア「Into the Program」を運営し、実務や開発で得た知識をもとに、プログラミングの実装方法やWebサイトの運用・セキュリティ情報を発信しています。

主な分野
Webサイト構築・保守・運用 / HTML/CSS / JavaScript / PHP / WordPress / サーバー構築・保守・運用 / アプリ開発 / セキュリティ対策
資格・試験合格
情報セキュリティマネジメント試験
基本情報技術者試験
AWS認定ソリューションアーキテクト アソシエイト
PHP8技術者認定ウィザード
メディア運営
2015年〜

記事の作成・更新について

セキュリティ記事は、ベンダーの公式アドバイザリやCVE・JVNなどの一次情報を参照し、出典と情報確認日を記載します。実環境での検証を行った場合は、その環境と確認範囲を明示します。重要な追加情報や誤りを把握した場合は、内容を確認して追記・訂正します。

関連する記事

おすすめの書籍

キーワードから探す

スポンサーリンク