Radio 是 HTML 中的單選框,同一個(gè) form 中,name 相同的 Radio 構(gòu)成一組,這一組中最多只允許有一個(gè) Radio 被選中。
如果將 form 提交到服務(wù)器端 ASP 程序,ASP 程序要獲得用戶選擇的那個(gè) Radio 的 value 是非常方便的,用 request.Form("RadioName"),不必理會(huì)有幾個(gè) Radio。
但在 JS(JavaScript) 中就要復(fù)雜多了,我們不能像對(duì)其它元素(如:文本框)一樣,使用 formid.objName.value 來取值,我們應(yīng)該循環(huán)這個(gè)組的 Radio,判斷其 checked 屬性,再取值。
為了方便使用javascript獲取radio的值,我寫了一個(gè)通用的函數(shù)來實(shí)現(xiàn):
function GetRadioValue(RadioName){
var obj;
obj=document.getElementsByName(RadioName);
if(obj!=null){
var i;
for(i=0;i<obj.length;i++){
if(obj[i].checked){
return obj[i].value;
}
}
}
return null;
}
比如,我們有一個(gè)name屬性為:“myradio”的單選控件組,要得到選中的值,只需這樣調(diào)用就可以了:
var RValue;
RValue=GetRadioValue("myradio");
如果沒有給出的radioname控件,則直接返回null,或者這一組控件沒有被選擇的項(xiàng),則也返回null。