我有一组名为=“rb_Select”的单选按钮。
我添加了一个简单的单选按钮验证,以确保选择了至少1个单选按钮,但我现在看到我的语法是我的javascript函数写错了。
基本上,我要检查的是if else语句中的true / false值。但是,我意识到如果没有选择单选按钮,那么我会得到多个错误值。假设我有8个单选按钮,我在调试时会收到8个警报窗口。
如果我选择1个单选按钮,那么我得到一个真实和7假。但那不是我想要的。
我想要的是真实而不虚假。我不确定语法应该是什么。我显然做错了什么。
这是提交功能:
var $ = jQuery;
$("#pError").hide();
$("#LocInfo").hide();
$(".submit-button").click(function() {
var rb = document.getElementsByName('rb_Select');
for (var i = 0; i < rb.length; i++)
{
if (rb[i].checked == true)
{
alert('Value=' + rb[i].value + 'TRUE');
var myURL = rb[i].value;
window.open(myURL);
} else {
alert('Value=' + rb[i].value + 'False');
$("#pError").fadeIn();
var fade_out = function() { $("#pError").fadeOut(); }
setTimeout(fade_out, 3000);
};
}
});
答案 0 :(得分:1)
您可以使用带有长度方法的选择器input[type='radio'][name='rb_Select']:checked
来查看是否已选择广播。
试试这个:
var $ = jQuery;
$("#pError").hide();
$("#LocInfo").hide();
$(".submit-button").click(function() {
var radios = $("input[type='radio'][name='rb_Select']:checked");
if(radios.length > 0){
alert('Value=' + radios.val() + 'TRUE');
window.open(radios.val());
} else{
alert('Value=' + radios.val()+ 'False');
$("#pError").fadeIn();
var fade_out = function() { $("#pError").fadeOut(); }
setTimeout(fade_out, 3000);
};
}
});