ラジオボタンの選択でSeleteの内容を変更する場合
<HTML> <HEAD> </HEAD> <BODY> <script type="text/javascript" language="JavaScript"> <!-- opt_array_kanji = [ { text: '色は匂へど', value: '0' } , { text: '散りならむ', value: '1' } , { text: '和歌よたれそ', value: '2' } , { text: '常ならむ', value: '3' } ]; opt_array_kana = [ { text: 'いろはにほへど', value: '0' } , { text: 'ちりならむ', value: '1' } , { text: 'わかよたれそ', value: '2' } ]; // 選択リストを作る関数 // function chgPulldown(obj){ // リセット obj.hoge.disabled = false; var radioSelectList = document.getElementsByName("foo"); var radioSelect=""; for(var i=0; i<radioSelectList.length; i++){ if (radioSelectList[i].checked) { radioSelect = radioSelectList[i].value; break; }; } if(radioSelect == "foo1"){ obj.hoge.disabled = true; return; } else if(radioSelect == "foo2"){ createSelection(obj, opt_array_kanji); } else { createSelection(obj, opt_array_kana); }; } // 選択リストを作る関数 // 引数: ( selectオブジェクト, option配列 ) // function createSelection( obj, opt_array ){ var doc = obj.hoge; doc.length = 0; // 整形 for( var i=0; i < opt_array.length; i++){ doc.length++; doc.options[ doc.length - 1].value = opt_array[i].value; doc.options[ doc.length - 1].text = opt_array[i].text; }; } //--> </script> <form> <div class="title">Foo</div> <div class="data"> <input type="radio" name="foo" value="foo1" onclick="chgPulldown(this.form)">aaa <input type="radio" name="foo" value="foo2" onclick="chgPulldown(this.form)">bbb <input type="radio" name="foo" value="foo3" onclick="chgPulldown(this.form)">ccc<br/> オプション  <select name="hoge" > <option value="" selected>▽ 選択してください</option> <option value="0">いろはにほへど</option> <option value="1">ちりぬるを</option> <option value="2">わかよたれそ</option> <option value="3">つねならむ</option> <select> </div> </form> </BODY> </HTML>
aaaを押下するとプルダウンが使えなくなる。
bbbを押下すると漢字バージョン、
cccを押下するとひらがなバージョンに切り替わる。