我需要从隐藏字段中显示的一组单选按钮中选择“是”的数量。
我有一个包含多组单选按钮的表单。
第一台收音机:
<input type="radio" name="number_of_sets_to_count" id="number_of_sets_to_count_1" value="1">
<input type="radio" name="number_of_sets_to_count" id="number_of_sets_to_count_2" value="2">
<input type="radio" name="number_of_sets_to_count" id="number_of_sets_to_count_3" value="3">
<input type="radio" name="number_of_sets_to_count" id="number_of_sets_to_count_4" value="4">
<input type="radio" name="number_of_sets_to_count" id="number_of_sets_to_count_5" value="5">
根据上面选择的值(即1,2,3,4,5),然后计算从单选按钮下面选择是的单选按钮。即如果在上面的单选按钮中选择2,则前两个单选按钮组需要检查是。如果选择4,则需要检查下面的前4个无线电设备是否为值。
这是接下来的五个电台
<input type="radio" name="set1" id="set1_no" value="no">
<input type="radio" name="set1" id="set1_yes" value="yes">
<input type="radio" name="set2" id="set2_no" value="no">
<input type="radio" name="set2" id="set2_yes" value="yes">
<input type="radio" name="set3" id="set3_no" value="no">
<input type="radio" name="set3" id="set3_yes" value="yes">
<input type="radio" name="set4" id="set4_no" value="no">
<input type="radio" name="set4" id="set4_yes" value="yes">
<input type="radio" name="set5" id="set5_no" value="no">
<input type="radio" name="set5" id="set5_yes" value="yes">
<input type="hidden" name="number_of_yes" value="">
感谢社区帮助,我有这个JQuery代码,用于计算表单中的yes数,并在提交时将数字放入隐藏文本框'number_of_yes'。
<script type="text/javaScript">
$(document).ready(function() {
$("#yourFormsId").submit(function() {
$('input[name="number_of_yes"]').val(
$('input:checked[type="radio"][value="yes"]').length);
});
});
</script>
但是,这会检查所有选择的是,我需要将其限制为第一,第二,第三,第四或第五个无线电设备(即set1,set2,set3,set4,set5),具体取决于从number_of_sets_to_count无线电中选择的内容按钮(即1,2,3,4,5)。
由于
答案 0 :(得分:2)
试试这个
$(document).ready(function() {
$("input[name=number_of_sets_to_count]").click(function(){
var radioBtns = $("input[id^='set']");
//First set all the radio buttons to No
radioBtns.filter("[value='no']").attr("checked", true);
//Now set only the required radio buttons to yes
radioBtns.filter("[value='yes']:lt("+parseInt($(this).val())+")").attr("checked", true);
});
$("#yourFormsId").submit(function() {
$('input[name="number_of_yes"]').val($('input:checked[type="radio"][value="yes"]').length);
});
});