我想验证在一个form.kindly帮助中从五个单选按钮组中选择了至少三个单选按钮。
你的出勤率
<tr>
<th > Your grades <font size="4" > </font></th>
<td> <input type="radio" name ="v2" value = "4" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v2" value = "3" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v2" value = "2" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v2" value = "1" onclick="updateTotal();" /></td>
</tr>
<tr>
<th >Your self-control <font size="4" > </font></th>
<td> <input type="radio" name ="v3" value = "4" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v3" value = "3" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v3" value = "2" onclick="updateTotal();" /></td>
<td> <input type="radio" name ="v3" value = "1" onclick="updateTotal();" /></td>
</tr>
你的自我
控制
FD
答案 0 :(得分:1)
if ($('input[type=radio]:checked').length >= 3) {
//what to do if 3 or more are selected
}
基本上,它执行以下操作::checked
选择器查找已检查的任何无线电输入(您可能只需要选择特定div中的输入等,以避免拉入页面上的其他单选按钮)。默认情况下,jQuery在选择器中构建匹配元素的集合,然后返回它。由于这只是一个标准数组,因此可以通过获取数组的length
属性来计算匹配的元素数。如果有3个或更多选中的单选按钮,则数组的长度至少为3,而if
语句将评估为true
答案 1 :(得分:0)
var minThreeChecked = $('input[type="radio"]').filter(':checked').length >= 3;
您可以组合这些选择器,但这种方式更有效。
答案 2 :(得分:0)
您可以使用
$('input[type=radio]:checked').length >= 3
如果您需要更准确地了解这些群组,请使用
$('input[name^=v][type=radio]:checked').length >= 3
答案 3 :(得分:0)
我认为您正在寻找:http://jsfiddle.net/2dfRd/
$(':radio').change(function (e) {
var rad = $('[type="radio"]:checked').length;
if (rad >= 3) {
$(':radio').not(':checked').prop('disabled', true);
alert('3 radios selected.');
}
});
如果您检查了3个无线电,那么所有其他无线电将被禁用。