【问题标题】:Validating multiple sets of radio buttons验证多组单选按钮
【发布时间】:2013-02-10 23:01:50
【问题描述】:

我有一个包含 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 的例子,但不知道如何在一个简单的循环函数中实现它来测试每次迭代。

【问题讨论】:

  • 你试过用对象代替数组吗?
  • 您想如何准确验证?规则是什么?
  • 为什么没有接受的答案?

标签: javascript types input


【解决方案1】:

像使用 jquery (http://jquery.com/) 一样

for(int i = 1; i < 30; ++i)
{
    if ($('#yes' + i).val() == 'yes'){ do something }
}

【讨论】:

    【解决方案2】:

    使用 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);
    });
    

    这个 sn-p 只选择选中的单选按钮,然后将它们打印到控制台。你可以从这里做任何你想做的事情,q 是问题的名称(例如ans1),a 是答案本身(即truefalse)。

    in action

    【讨论】:

      猜你喜欢
      • 2012-11-11
      • 2017-11-18
      • 1970-01-01
      • 2020-07-08
      • 2018-11-23
      • 2011-06-26
      • 2013-01-08
      • 2012-02-07
      • 2013-06-16
      相关资源
      最近更新 更多