如何按类型检查所有无线电?

时间:2011-11-02 07:51:33

标签: jquery validation

我有四个<input type"radio">元素。如何在jQuery上检查它并在用户未检查元素时发出警报?

元素位于<div id"p1">标记中。

5 个答案:

答案 0 :(得分:2)

这是为了检查所有:

$('#p1 input[type=radio]').attr("checked", "checked");

这是为了检查是否所有都未选中:

if ($('#p1 input[type=radio]:checked').length == 0) {
    // alert here
}

这是为了检查是否有一个或多个未选中:

if ($('#p1 input[type=radio]:checked').length < 4) {
        // alert here
    }

答案 1 :(得分:1)

如果我已正确理解您的问题,您需要检查您的单选按钮是否已被选中。

您可以使用“attribute equals”选择器选择单选按钮,然后filter匹配的设置仅包含未选中的单选按钮:

var uncheckedRadios = $("input[type='radio']").filter(function() {
    return !this.checked
});

答案 2 :(得分:1)

$(“input [type ='radio']”)。attr(“checked”,“checked”)将检查所有单选按钮

答案 3 :(得分:1)

$("input[type='radio']:not(:checked)").each(function() {
    alert($(this).next().html());
});

另见jsfiddle

=== UPDATE ===

var sQuestions = '';
$("input[type='radio']:not(:checked)").each(function() {
    sQuestions += $(this).next().html() + "\n";
});
alert(sQuestions);

另请参阅我更新的jsfiddle

=== UPDATE ===

使用.attr('id')代替.html()来获取ID而不是文本。另请参阅我更新的jsfiddle

我在您的表单中找不到div,在每个input type="radio"之后添加一个。{/ p>

答案 4 :(得分:1)

您必须选择未经检查过的元素:

    var uncheckedRadios = $("input[type='radio']").filter(function() {
Foo();
});

对于您发现的每一个,您可以在元素旁边显示隐藏的标签。这个标签上写着“警告,未检查”。或者在页面底部,您可以在红色区域中显示未选中的单选按钮列表。

在Foo()函数中执行此操作..