ちょっと聞かれて、調べて答えたこと。メモメモ
Javascriptで、Domっていうか、createElementつかって、ラジオボタン作って、選択された人を、取得する方法。
要素を押されているかどうか、全部チェックして、チェックされていたら、そいつの値を取得する。
こんなかんじ。
<html> <head> <SCRIPT Language="JavaScript"> <!-- var data; function load() { //==============================// // データ設定 // //==============================// data = new Array(); data[0] = "安倍さん"; data[1] = "麻生ローゼン閣下"; data[2] = "小沢だ!!"; //==============================// // データセット // //==============================// tb = document.getElementById("sori"); for(i = 0 ; i < data.length ; i ++ ) { newTr = document.createElement('tr'); newTd = document.createElement('td'); newbt = document.createElement('input'); newbt.type = "radio"; newbt.name = "rd"; newbt.id = "rd"; newbt.value = data[i]; newbt.attachEvent("onclick",setpos); newTd.appendChild(newbt); newTr.appendChild(newTd); newTd = document.createElement('td'); moji = document.createTextNode(data[i]); newTd.appendChild(moji); newTr.appendChild(newTd); tb.appendChild(newTr); } } function setpos(e) { rt = e.srcElement; for(i = 0 ; i < data.length ; i ++ ) { f1.rd[i].checked = false; } rt.checked = true; } function sentaku() { for(i = 0 ; i < data.length ; i ++ ) { if (f1.rd[i].checked == true) { alert(f1.rd[i].value); } } } // --> </SCRIPT> </head> <body onLoad="load()"> <form id=f1 name=f1> 次の総理大臣は?<bt> <table border=1><tbody id="sori"></tbody></table> <input type=button id=btx onClick="sentaku()" value="政権選択!"> </form> </body> </html> |
(上記< > は、本当は半角)
setposは、チェックマークがつかなかったので、チェックマークをつけるための関数。
その、値をとってくるのは、「sentaku」という関数。
安倍さん、麻生さん、小沢さんをチェックして、チェックしてあったら、valueを出すと。。