如何验证多个单选按钮 [英] How to Validate Multiple radio buttons

查看:96
本文介绍了如何验证多个单选按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何验证多个单选按钮。所有这些单选按钮都是动态生成的。

How can I validate multiple radio buttons. All these radio buttons generated dynamically.

<input type="radio"  name="answer_option1" value="1" id="ans_options1" />
<input type="radio"  name="answer_option1" value="2" id="ans_options2" />
<input type="radio"  name="answer_option1" value="3" id="ans_options3" />
<input type="radio"  name="answer_option1" value="4" id="ans_options4" />

<input type="radio"  name="answer_option2" value="5" id="ans_options5" />
<input type="radio"  name="answer_option2" value="6" id="ans_options6" />
<input type="radio"  name="answer_option2" value="7" id="ans_options7" />
<input type="radio"  name="answer_option2" value="8" id="ans_options8" />

<input type="radio"  name="answer_option3" value="9" id="ans_options9" />
<input type="radio"  name="answer_option3" value="10" id="ans_options10" />
<input type="radio"  name="answer_option3" value="11" id="ans_options11" />
<input type="radio"  name="answer_option3" value="12" id="ans_options12" />

<input type="radio"  name="answer_option4" value="13" id="ans_options13" />
<input type="radio"  name="answer_option4" value="14" id="ans_options14" />
<input type="radio"  name="answer_option4" value="15" id="ans_options15" />
<input type="radio"  name="answer_option4" value="16" id="ans_options16" />


推荐答案

试试这个 http://jsfiddle.net/aamir/r9qR2/

由于每组具有不同的名称属性,因此您必须对每组单选按钮进行验证。

Since each group has different name attribute so you have to do validation for each set of radio buttons.

if($('input[name="answer_option1"]:checked').length === 0) {
     alert('Please select one option');
}

如果你有无限数量的团体。试试这个 http://jsfiddle.net/aamir/r9qR2/2/

If you have unlimited number of groups. Try this http://jsfiddle.net/aamir/r9qR2/2/

    //Make groups
    var names = []
    $('input:radio').each(function () {
        var rname = $(this).attr('name');
        if ($.inArray(rname, names) == -1) names.push(rname);
    });

    //do validation for each group
    $.each(names, function (i, name) {
        if ($('input[name="' + name + '"]:checked').length == 0) {
            console.log('Please check ' + name);
        }
    });

如果您只想为所有组显示1个错误。试试这个 http://jsfiddle.net/aamir/r9qR2/4/

If you want to show just 1 error for all groups. Try this http://jsfiddle.net/aamir/r9qR2/4/

这篇关于如何验证多个单选按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆