[英]How to get all radio button group selections from a form submit
我有一个包含许多单选按钮的表单,这些单选按钮是从问题数据库中动态生成的。 他们看起来像这样:
<input name="group{{../questionNumber}}" type="radio" id="q{{../questionNumber}}_{{answerLetter}}" value="{{answerLetter}}" />
其中((questionNumber}}
只是一个整数(它们从1开始顺序排列),而{{answerLetter}}
将是对于每个新问题从A
再次开始的字母,这意味着问题1,答案2的name="group1"
将为name="group1"
和id=q1_B
。
当用户提交表单时,我想获得所有答案,但是到目前为止,我只知道如何通过显式键入name
属性值来获得答案:
Template.Test.events({
"submit #Test": function (event, template) {
// var element = template.find('input:radio[name=group1]:checked');
// alert($(element).val());
alert(event.target.group1.value)
return false;
}
});
#Test
是form
id
。
我如何动态地将所有value
值放入数组? 我还可以在上述函数中轻松获取单选按钮组的数量,还是更容易从数据库查询?
您可以通过以下方式找到所有选中的无线电电台,其姓名均以“ group”开头:
var groups = {};
$('#Test').find('input[name^="group"]:checked').each(function(){
var this_name = $(this).attr('name');
var this_value = $(this).val();
groups[this_name] = this_value;
});
现在找到的无线电是对象groups
键,因此您可以像这样对它们进行计数:
var count = 0;
for (var k in groups)
if (groups.hasOwnProperty(k))
++count;
无线电值是该对象中键的值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.