dポイントプレゼントキャンペーン実施中!

webサイトを制作しています。
ラジオボタンを選択することで、チェックボックスがアクティブになるようにしたいのですがどのような方法があるでしょうか。
宜しくお願い致します。

A 回答 (3件)

ああ、なるほど


いろいろやりようはありますが、こんな感じじゃないですかねぇ

<script>
window.onload=function(){
document.getElementById("opt1").onclick=function(){
optgroupDisabled(this.form,true);
}
document.getElementById("opt2").onclick=function(){
optgroupDisabled(this.form,false);
}
}
function optgroupDisabled(f,flg){
var objs=f.getElementsByTagName("input");
for(var i=0;i<objs.length;i++){
if(objs[i].className=="optgroup") objs[i].disabled=flg;
}
}
</script>

<form>
<input type="radio" name="opt" id="opt1" checked><label for="opt1">標準仕様</label><br>
<input type="radio" name="opt" id="opt2"><label for="opt2">オプションをつける</label><br>
<input type="checkbox" name="hoge1" id="hoge1" class="optgroup" disabled><label for="hoge1">hoge1</label><br>
<input type="checkbox" name="hoge2" id="hoge2" class="optgroup" disabled><label for="hoge2">hoge2</label><br>
<input type="checkbox" name="hoge3" id="hoge3" class="optgroup" disabled><label for="hoge3">hoge3</label><br>
</form>
    • good
    • 0
この回答へのお礼

どうも有り難うございます!
大変助かりました。

お礼日時:2008/01/30 22:37

こんな感じですか?


#あまり綺麗なソースじゃないのですが(^^;

<html>
<head>
<script type="text/javascript"><!--
function changeDisable(){
var i;
var objYesno;
var objSelect;

objYesno = document.getElementsByName("yesno");
objSelect = document.getElementsByName("select");
for(i=0; i<objSelect.length; i++){
objSelect(i).disabled = !yesno(0).checked;
}
}
// --></script>
</head>
<body>
<input name="yesno" type="radio" onclick="changeDisable();" checked="checked"/>はい(複数選択可)
<br/>
<input name="select" type="checkbox"/>選択1<br/>
<input name="select" type="checkbox"/>選択2<br/>
<input name="select" type="checkbox"/>選択3<br/>
<input name="select" type="checkbox"/>選択4<br/>
<br/>
<input name="yesno" type="radio" onclick="changeDisable();"/>いいえ
</body>
</html>

この回答への補足

no.1の方の補足に追加したとおり特定のラジオボタンを押したときのみ、チェックボックスがアクティブになる方法を知りたかったのです。
解答ありがとうございました。

補足日時:2008/01/30 21:10
    • good
    • 0

できますが、どのようなことをやりたいかわからないので


なんとも言えません。

普通に考えれば、ラジオボタンをチェックしてチェックボタンが
チェックされるなら、ラジオボタンをチェックするだけで、
チェックボタンをチェックする必要はありませんので。

具体例を補足してください

この回答への補足

解答有り難うございます。
説明不足で申し訳ありません。
商品の注文画面なんです。
例えば…
ーーーーーーーー
○標準仕様

○オプションをつける



ーーーーーーーー

こういう選択肢の場合、「オプションをつける」にチェックした場合のみチェックボックスがアクティブ(選択できる状態)になるようにしたいんです。
宜しくお願いいたします。

補足日時:2008/01/29 12:14
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!