- ベストアンサー
チェックボックスとラジオボタンの連動について
- Javascriptを使用して、親のチェックボックスが選択された場合、子のラジオボタンが選択可能になる方法について詳しく説明します。
- チェックボックスとラジオボタンの連動について、親のチェックボックスが選択された際に子のラジオボタンが選択可能になるようにする方法について解説します。
- Javascriptを使用して、親のチェックボックスの選択状態を監視し、選択された場合に子のラジオボタンを有効化する方法を紹介します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
>name属性に日本語が含まれて この運用は高い確率で破綻します、なるべく避けた方がいいでしょう。 >チェック有無がID属性か、別の要素で確認が出来るよう こんな感じでどうでしょう? <script> window.onload=function(){ set_radio(); } try{ document.addEventListener ('click',function(e){clickfunc(e)},true); //基本 }catch(e){ document.attachEvent('onclick',function(e){clickfunc(e)}); //IE } function clickfunc(e){ var t = (e.srcElement || e.target); if(t.id=="id01" || t.id=="id02"){ set_radio(); } } function set_radio(){ var flg=!(document.getElementById('id01').checked || document.getElementById('id02').checked ); document.getElementById('id03').disabled=flg; document.getElementById('id04').disabled=flg; document.getElementById('id05').disabled=flg; } </script> <form> <div> <input type="checkbox" name="親メニュー" id="id01" value="親メニュー1"> 親メニュー1 <input type="checkbox" name="親メニュー" id="id02" value="親メニュー2"> 親メニュー2 </div> <div> <input type="radio" name="子メニュー" id="id03" value="子メニュー1"> 子メニュー1 <input type="radio" name="子メニュー" id="id04" value="子メニュー2"> 子メニュー2 <input type="radio" name="子メニュー" id="id05" value="子メニュー3"> 子メニュー3 </div> <form>
その他の回答 (1)
自分ではどこまでできたのか、きちんと書きましょうね。 checkedプロパティというのがあります。 http://javascriptist.net/ref/element.checked.html あとはifとorだけなのですぐに理解できるでしょう。
お礼
早速のご回答くださり、ありがとうございます。 確かに説明不足でした。すみません。 参考にさせて頂きます。
お礼
早速のご回答くださり、ありがとうございます。 うまくこの通りに機能することができました。 name属性で日本語は避けるべきなのですね。 利用しているメールフォームのCGIがあって それには仕様でname属性が日本語でしたので この条件でやるしかないと思ってました。 これで助かりました。大変感謝致します。