2016-11-12 54 views
0

訪問它們在HTML表單我有這兩個複選框男性和女性...檢查複選框在使用JavaScript的HTML表單,我只能通過getElementsByName()

<tr><td> 
Gender: 
</td><td> 
<input type="radio" name="gender" value="male" /> Male 
<input type="radio" name="gender" value="female" /> Female 
</td></tr> 

我想選擇請檢查這些值的檢查..我一定要檢查每一個單獨的盒子

document.getElementsByName("gender")[0].checked; 
document.getElementsByName("gender")[1].checked; 

還是有辦法可以既分配到一個數組這些值,然後再通過他們與一個for-each incase我需要在將來添加更多選項? (我知道我不能添加更多的男性或女性,但這是爲未來打樣我自己與其他複選框選項)

(我知道我可以添加classnames,以使它更容易,但這是對於大學的分配,由我目前通過工作)

回答

1

你可以這樣來做,

var arrRadio=document.getElementsByName("gender"); 
for(radio in arrRadio){ 
arrRadio[radio].checked=true; 
} 

,或者您也可以訪問的情況下,這樣的單選按鈕它出現在一個名稱的形式,

var form=document.myForm; 
var arrRadio=form.gender; 
/*or*/ 
var arrRadio=document.myForm.gender; 
2

如果可以的類名稱添加到標記的一部分,你可以使用getElementsByClassName方法

https://developer.mozilla.org/en-US/docs/Web/API/Document/getElementsByClassName

(假設你不想使用jQuery)。

+0

由於這是一個大學項目我不允許改變HTML,但我同意這將是一個更簡單的方法,如果我沒有綁定任何標準!謝謝:) – rawr105

+0

如果你可以使用jQuery,下面會給你所有的單選按鈕:var $ elements = $(':radio'); –

0

可以使用此行:

變種X = document.querySelectorAll( 「輸入:檢查」);

這會讓你只有選定的一個。 您可以添加類,以更好地只得到單選按鈕,如「.gender:檢查」