[英]Checking all radio button are checked in native javascript
我有一个gatherRadioBtn()函数,它发布表单中的else显示错误。 这将从checkRadioWrapper()中获取提示,以检查是否已选中所有单选按钮。
但是, true
情况并未实现。 我的(r[i].type == "radio") && !(r[i].checked)
表达式中是否存在错误。
将很快上传到jsfiddle
谢谢。
function checkRadioWrapper()
{
for (var i=0; i < r.length; i++)
{
if ( (r[i].type == "radio") && !(r[i].checked) )
{
return false;
}
}
return true;
}
function gatherRadioBtn()
{
alert("in gather");
var r = document.getElementsByTagName("input");
var literal = [];
for (var i=0; i < r.length; i++)
{
if ( (r[i].type == "radio") && r[i].checked )
{
literal.push(r[i].name);
literal.push(r[i].value);
}
}
if (checkRadioWrapper())
{
document.getElementById("Errnodata").innerHTML = "" ;
var joinedArray = literal.join(", ");
window.opener.document.getElementById("myarray").value= joinedArray;
window.opener.getVolunteerDetails();
window.close();
}
else
{
document.getElementById("Errnodata").innerHTML = "Please select for every radio btns!" ;
}
}
你必须将“r”作为参数传递给你的函数:
function checkRadioWrapper( r )
{
for (var i=0; i < r.length; i++)
// etc
接着:
if (checkRadioWrapper( r ))
现在,也就是说,在一组共享相同名称的单选按钮中,浏览器永远不会允许同时检查所有这些按钮。 因此,这真的没有多大意义。 如果你有没有与其他单选按钮共享名称的单选按钮,它们应该是复选框而不是单选按钮。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.