检查空的无线电输入
我想检查用户是否选择了一个单选按钮。 我编码了这个:
HTML
JS
function sendSuccess(){ var len = document.formRate.ratingInput1.length; var flag; for(i=0; i<len; i++){ if (document.formRate.ratingInput[i].checked){ flag = true; } else{ flag = false; break; } } if(flag === false){ console.log('noooooo'); return false; }else{ console.log('yesssss'); } }
但它不起作用。
工作演示 http://jsfiddle.net/cXPYQ/
希望这符合您的需求:)
代码
$("form").submit(function () { var flag = true; $(':radio').each(function () { name = $(this).attr('name'); if (flag && !$(':radio[name="' + name + '"]:checked').length) { alert(name + ' group not checked'); flag = false; } }); return flag; });
您可以使用jQuery
使用Attribute Equals Selector [name =“value”]来查找具有相同名称的单选按钮,并且:checked
以仅获取已检查的元素。 您可以使用length
来检查是否有任何选中的单选按钮。 如果选中一个或多个单选按钮,则选中单选按钮的length
将为零,并且将大于零。
现场演示
if($('[name=ratingInput1]:checked').length) console.log('Yes'); else console.log('No');
试试这个
function sendSuccess(){ var flag = false; var len = $('input:radio[name="ratingInput1"]:checked').size(); if(len == 0){ console.log('noooooo'); flag = false; }else{ console.log('yesssss'); flag = true; } return flag; }
它是一个带有单选按钮的简单表单,所以你只需要给表单命名formRate,而不需要jQuery,以下内容将有效
HTML
使用Javascript
function sendSuccess() { rating = document.forms["formname"]["ratingInput1"].value; if(rating > 0){ console.log(rating); } else { console.log('No rating'); } return false;
}
var flag = $('[name =“ratingInput1”]’)。is(’:checked’);
如果没有选择具有该名称的无线电,则返回false。