2016-11-12 61 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:检查”