使用jQuery检查单选按钮是否正确

在我的表格上,我有一组单选按钮。 这是标记:

Format

提交表单时,我想检查其中一个是否已被选中。 最好的方法是什么? 我正在考虑循环遍历它们并设置一个标志来设置是否检查其中一个,然后在循环后检查标志,如果它是false则抛出错误。

任何帮助表示赞赏,欢呼。

您可以使用length和equal属性选择器 :checked filter selector如下所示:

 if ($("input[name='fileType']:checked").length > 0){ // one ore more checkboxes are checked } else{ // no checkboxes are checked } 

演示

http://jsfiddle.net/Vq2jB/2/

 var isChecked = jQuery("input[name=fileType]:checked").val(); 

试试jQuery Validation插件。 它可以为你做很多事情,对很多不同的forms非常有用。 如果你想简单地做到这一点:

 if($("input[name=fileType]:checked").length > 0) { //Is Valid } 

尝试:

 var checkbox = $("input[@name='fileType']:checked"); if( checkbox.length > 0 ) { alert( checkbox.val() ); // checkbox value } else { alert('Please select a format'); // error } 

http://jsfiddle.net/wE4RD/

真的老了,我知道。 如果未选择无线电选择,则返回“未定义”,而不是“0”。 在我的例子中,我声明了一个带有单选按钮值的变量。 如果所述值未定义,则javascript返回false。

 gender = $('input[name=gender]:checked').val(); if(typeof gender === 'undefined'){ alert('Do not move on'); $('input[name=gender]').css('box-shadow', '0 0 2px 0 red'); return false; } 

我认为$('input[name=fileType]:checked').length将成功。

您可以检查已检查的单选按钮名称是否在jQuery中返回值:

 if($("input[@name='fileType']:checked").val() != null){ // button checked }