2

我有一个包含 29 个单选按钮对选择的表单,每个按钮对都有一个是/否选择。

对于每个集合,选择的名称按如下方式递增:ans1、ans2、ans3... ans29。每个都有“是”或“否”的值

它或多或少是这样的:

<input type="radio" id="yes1" name="ans1" value="yes"/>
<input type="radio" id="no1" name="ans1" value="no"/>

我想编写一个 Javascript 函数来在提交表单时验证答案。我正在考虑在循环中使用数组,但不知道如何将选择放入数组中。

明显的长方法是重复的if(ans1 = yes) {do something} if(ans2=yes){do something}。我看过一些例子,getElementsByName但不确定如何在一个简单的循环函数中实现它来测试每次迭代。

4

2 回答 2

5

使用 jQuery

$("input:radio:checked").each(function (index) {
    var this$ = $(this);
    var q = this$.attr('name');
    var a = this$.val();

    console.log('Question: ' + q + ', answer: ' + a);
});

此片段仅选择选中的单选按钮,然后将它们打印到控制台。你可以从这里做任何你想做的事情,q是问题的名称(例如ans1)和a答案本身(true例如false)。

看到它在行动

于 2013-02-25T18:05:58.137 回答
1

使用 jquery ( http://jquery.com/ ) 喜欢

for(int i = 1; i < 30; ++i)
{
    if ($('#yes' + i).val() == 'yes'){ do something }
}
于 2013-02-25T18:00:22.260 回答