如何通过jquery验证无线电[必需]

如何通过jquery验证无线电[必需],jquery,jquery-validate,validation,radio,Jquery,Jquery Validate,Validation,Radio,ı有10组收音机。每组都有2个或3个或更多的收音机,这无关紧要。您需要从每个组中至少选择一个收音机 当您提交表单时,它必须检查并返回错误,如果其中任何一个(组)留空 ı尝试一些代码,但无法解决它。ı编写此代码是为了查找并显示错误,但它会逐个查找,因此如果有1个完整的提交表单,它的提交表单也会显示 $('#myForm').submit(function () { $(".radiogrup").each(function () { var sel = $(this

ı有10组收音机。每组都有2个或3个或更多的收音机,这无关紧要。您需要从每个组中至少选择一个收音机

当您提交表单时,它必须检查并返回错误,如果其中任何一个(组)留空

ı尝试一些代码,但无法解决它。ı编写此代码是为了查找并显示错误,但它会逐个查找,因此如果有1个完整的提交表单,它的提交表单也会显示

 $('#myForm').submit(function () {

     $(".radiogrup").each(function () {
         var sel = $(this).find("input[type='radio']:checked").val();

         if (sel == null) {
             alert("error msg");
             return false;

         }

     });


 });
html:

如果您知道如何配置required=“required”也许可以使用它

<div class="radiogrup">
    <form id="form1" name="form1" method="post" action="">
      <p>
        <label>
          <input type="radio" name="RadioGroup1" value="radyo" id="RadioGroup1_0" />
          Radyo</label>
        <br />
        <label>
          <input type="radio" name="RadioGroup1" value="radyo" id="RadioGroup1_1" />
          Radyo</label>
        <br />

        <input name="" type="submit" />
      </p>
    </form>
</div>


拉迪奥

拉迪奥


可能这一个可以帮助您不使用$。每个用于此

$('#myForm').submit(function () {    
var $elems = $(".radiogrup");

        (function fetch(i) {
            if(i >= $elems.length) return;  // no elems left

            var $elem = $elems.eq(i);

            var sel = $($elem).find("input[type='radio']:checked").val();
            if (sel == null) {
                     alert("error msg"); // just don't call fetch again
            }
            else
            {
                 fetch(i + 1); //next one
                 //apply more code here if form validation successfull
            }
        })(0);  // start with first elem
});

尝试用以下方式更正JS代码:

$('form').on("submit",function () {
    var valid=true; 
    $(".radiogrup").each(function(){
        var sel=$(this).find("input:radio:checked");
         if(!sel.length){
             valid=false;
         }
    });
    if(!valid){
        alert("error msg"); 
        return false;
    }

});
请参见:

此代码适用于您

//jQuery

$(function(){

 $('#myForm').submit(function () {
         if ($('input[type=radio]:checked').val() != "") {
             return true;
         }

alert('error msg')
return false

     });
})
//HTML

<form id="myForm" name="form1" method="post" action="">
      <p>
        <label>
          <input type="radio" name="RadioGroup1" value="" id="RadioGroup1_0" />
          radyo
          </label>
        <br />
        <label>
          <input type="radio" name="RadioGroup1" value="radyo" id="RadioGroup1_1" />
          Radyo</label>
        <br />

        <input name="" type="submit" />
      </p>
    </form>


拉迪奥

拉迪奥


为什么不在一个组中至少检查一个单选按钮?这将强制用户始终选中一个。用户必须填写所有问题。ı有10个问题和10x4选项,所以ı需要10个答案。他有10组单选按钮,该代码如何适用于所有组
<form id="myForm" name="form1" method="post" action="">
      <p>
        <label>
          <input type="radio" name="RadioGroup1" value="" id="RadioGroup1_0" />
          radyo
          </label>
        <br />
        <label>
          <input type="radio" name="RadioGroup1" value="radyo" id="RadioGroup1_1" />
          Radyo</label>
        <br />

        <input name="" type="submit" />
      </p>
    </form>