配列でまとめられそうだったので、質問のJavaScriptをちょっと書き直してみました。(^_^;
※参考URL
http://q.hatena.ne.jp/1321450592
<html> <head> <script type="text/javascript"> function check() { var strMsg = ""; var objR = new Object(4), objL = new Object(4), objH = new Object(2); var strText = { // 連想配列 "radio1": "あいうえお", "radio2": "かきくけこ", "radio3": "さしすせそ", "radio4": "たちつてと", "radio1+radio3":"いろは", "radio1+radio4":"にほへと", "radio2+radio3":"あかさたな", "radio2+radio4":"はひふへほ" } objH[0] = document.getElementById("H1"); objH[1] = document.getElementById("H2"); for(var i=0; i<4; i++){ objR[i]=document.getElementById("radio"+(i+1)); objL[i]=document.getElementById("L"+(i+1)); objL[i].style.color="#000"; if(objR[i].checked) objL[i].style.color="#ddd", strMsg += "+"+objR[i].value; } strMsg=strMsg.substring(1); objH[0].innerHTML=strText[strMsg]; objH[1].innerHTML=strMsg; } </script> </head> <body> <p onclick="check()"> <label class="label01" id="L1"> <input type="radio" name="radio1" id="radio1" value="radio1" />1</label> <label class="label02" id="L2"> <input type="radio" name="radio1" id="radio2" value="radio2" />2</label> </p> <p onclick="check()"> <label class="label03" id="L3"> <input type="radio" name="radio2" id="radio3" value="radio3" />3</label> <label class="label04" id="L4"> <input type="radio" name="radio2" id="radio4" value="radio4" />4</label> </p> <div class="html1" id="H1"></div> <div class="html2" id="H2"></div> </body> </html>
●ゼロからわかる JavaScript超入門 [大型本] 河西 朝雄 (著)
- 作者: 河西朝雄
- 出版社/メーカー: 技術評論社
- 発売日: 2010/01/08
- メディア: 大型本
- 購入: 1人 クリック: 14回
- この商品を含むブログ (12件) を見る