JavaScript - ラジオボタンの選択状態を取得する checked
JavaScriptでラジオボタンが選択されているかどうかを取得する場合は、 checked プロパティを利用します。
checked プロパティは、選択時に true、非選択時に falseとなります。
ここでは、id属性、name属性、を利用してラジオボタンの選択状態を取得する 方法を説明します。
id属性を使って取得する(getElementById)
id属性を使って取得する場合のサンプルコードです。
HTML
<form>
<label><input type="radio" id="rbutton" value="hello" />hello</label>
</form>
JavaScript
getElementById()メソッドを使います。
let elem = document.getElementById('rbutton');
if (elem.checked){
// 選択時の処理
} else {
// 非選択時の処理
}
name属性を使って取得する(getElementsByName)
name属性を使って取得する場合のサンプルコードです。
HTML
name属性が設定されている3つのラジオボタンを用意します。
<form name="form0">
<label><input type="radio" name="car" value="toyota" checked/>toyota</label>
<label><input type="radio" name="car" value="honda"/>honda</label>
<label><input type="radio" name="car" value="suzuki"/>suzuki</label>
</form>
JavaScirpt
getElementsByName()メソッドを使い、name属性が一致するNodeListオブジェクトを取得します。
あとは、NodeListオブジェクトの数だけループしてchecked プロパティの値を取得します。
let nodes = document.getElementsByName('car');
for (let i = 0; i < nodes.length; i++){
if (nodes[i].checked) {
// 選択時の処理
} else {
// 非選択時の処理
}
}
まとめ
・ラジオボタンの選択状態を取得するには、checked プロパティを使用します。
・checkecd プロパティは、選択時にtrue、非選択時にfalseとなります。
・id属性が設定されている場合は、getElementById()を使います。
・name属性が設定されている場合は、getElementsByName()を使います。