※ ChatGPTを利用し、要約された質問です(原文:【続】チェックボックスのON/OFFに連動してラジオボタンのdisabledを解除)
チェックボックスのON/OFFに連動してラジオボタンのdisabledを解除
このQ&Aのポイント
チェックボックスのON/OFFに連動してラジオボタンのdisabledを解除するためのJavaScriptコードをご紹介します。
チェックボックスと連動してラジオボタンのdisabled属性を制御する方法について質問があります。
HTMLフォームでチェックボックスの状態によってラジオボタンのdisabled属性を制御する方法について教えてください。
【続】チェックボックスのON/OFFに連動してラジオボタンのdisabledを解除
http://oshiete1.goo.ne.jp/qa2692133.html
でご教示いただいたJSは,チェックボックスのON/OFFに連動して
ラジオボタンのdisabledを解除するものです.
ところが本番環境は次のように大量です.
Q1 □チェック ◎ラジオ1 ○ラジオ2 ○ラジオ3 ○ラジオ4 ○ラジオ5
Q2 □チェック ◎ラジオ1 ○ラジオ2 ○ラジオ3 ○ラジオ4 ○ラジオ5
:(中略)
Q15 □チェック ◎ラジオ1 ○ラジオ2 ○ラジオ3 ○ラジオ4 ○ラジオ5
なので,Qの数(15問)だけまったく同じfunctionを連ねましたが(↓),
もっと効率よい書き方があれば教えてください.
<html>
<head>
<script>
function checkfunc1() {
for(i=0; i<5; i++) {
document.myform.rdo1[i].disabled = !(document.myform.yesno1.checked);
}
}
function checkfunc2() {
for(i=0; i<5; i++) {
document.myform.rdo2[i].disabled = !(document.myform.yesno2.checked);
}
}
</script>
</head>
<body onLoad="checkfunc1();checkfunc2();">
<form name="myform">
<input type="checkbox" name="yesno1" onClick="checkfunc1();">チェック
<input type="radio" name="rdo1">0
<input type="radio" name="rdo1">1
<input type="radio" name="rdo1">2
<input type="radio" name="rdo1">3
<input type="radio" name="rdo1">4<br>
<input type="checkbox" name="yesno2" onClick="checkfunc2();">チェック
<input type="radio" name="rdo2">0
<input type="radio" name="rdo2">1
<input type="radio" name="rdo2">2
<input type="radio" name="rdo2">3
<input type="radio" name="rdo2">4
</form>
</body>
</html>
お礼
hkd9001さん,早速ご回答いただきありがとうございました. forでまわして汎用性を持たせるわけですね. ざっくりこのまま組み込ませていただきました. 大変助かりました,ありがとうございました.