Javascript 比较2个输入无线电值
我只是想检查用户是否选择了性别,如果没有,则应显示警报/代码执行,因此,在我的HTML中,我正在执行以下操作:Javascript 比较2个输入无线电值,javascript,Javascript,我只是想检查用户是否选择了性别,如果没有,则应显示警报/代码执行,因此,在我的HTML中,我正在执行以下操作: <label>Anrede:</label> <input type="radio" id="sexMale" name="gender" value="Herr"> <label for="sexMale">Herr</label> <input type="radio" id="sexFemale" name="ge
<label>Anrede:</label>
<input type="radio" id="sexMale" name="gender" value="Herr">
<label for="sexMale">Herr</label>
<input type="radio" id="sexFemale" name="gender" value="Frau">
<label for="sexFemale">Frau</label>
我很困惑,因为如果没有检查任何输入字段,则两个输入字段都返回false。
如果一个已经被选中,它会吐出正确选择的字段
但当我只是想这样比较它们时,什么也没发生:
if(sexM === false && sexF === false){
// Some Action here e.g:
document.getElementById('').innerHTML = "Please choose a gender";
}
由于这是一个包含20多个输入字段的表单(用于声明产品的表单),我不能使用以下内容:
input[type="radio"]:checked
我知道这一定是某种类型/比较问题。我已经尝试了所有选项来比较这两个值(例如===false,!==true等)-似乎都不起作用
只需要一点提示,谢谢试试$('input[name=“gender”]:checked')。长度==0
检查这个
这个演示我想你是想验证单选按钮。所以你可以这样试试
var radios = document.getElementsByName("gender");
var formValid = false;
var i = 0;
while (!formValid && i < radios.length) {
if (radios[i].checked) {
formValid = true;
console.log(radios[i].value);
}
i++;
}
if (!formValid) document.getElementById('error').innerHTML = "Please choose a gender";
return formValid;
var radios=document.getElementsByName(“性别”);
var formValid=false;
var i=0;
而(!formValid&&i
你的期望输出应该是什么?一个带有所选变量的值
var radios = document.getElementsByName("gender");
var formValid = false;
var i = 0;
while (!formValid && i < radios.length) {
if (radios[i].checked) {
formValid = true;
console.log(radios[i].value);
}
i++;
}
if (!formValid) document.getElementById('error').innerHTML = "Please choose a gender";
return formValid;