JQuery:检查是否使用单选按钮类名检查了任何单选按钮

时间:2014-12-21 03:22:10

标签: javascript jquery

我意识到类似的问题早先已经在堆栈溢出上回答了几次。我检查了所有问题,没有一个与我的相似。

我有一个带有一些单选按钮的html表单。在我的验证中,我想检查是否至少检查了一个单选按钮。

到目前为止我的方法:

  • 所有单选按钮都具有相同的类
  • 所有单选按钮具有相同的名称

我需要

  • 检查至少有一个单选按钮是selecetd
  • 读取所选按钮的值。

到目前为止我的Javascript

function supportFormValidation(){
   var isChecked = $('.radioButton').attr('checked')?true:false;
   alert(isChecked);
   return false;}    

这总是返回false。但是当我尝试通过每个单选按钮的各个ID读取值时,它返回true。有什么方法可以检查是否使用类名检查单选按钮。

JSFiddle:http://jsfiddle.net/evj9nch3/

2 个答案:

答案 0 :(得分:2)

只需使用:选中。

var isChecked = !!($('.radioButton:checked').length);

答案 1 :(得分:1)

要访问checked属性,您需要使用prop函数(无论如何1.6之后)。因为该值为true或false,所以它被视为元素的属性而不是属性。

Nits答案是一种更好的方法,但请查看以下内容,了解您的实施无效的原因。

Take a look at this post for more info

Here is a link to the fiddle

function supportFormValidation() {
  var isChecked = $('.radioButton').prop('checked') ? true : false;
  alert(isChecked);
  return false;
};

supportFormValidation();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='checkbox' class='radioButton' checked='true' />