如何只允许选择一个动态生成的单选框?

时间:2014-01-08 12:53:03

标签: javascript php jquery

我正在尝试为比赛页面创建一个后端。这里默认是两个输入框,带有一个单选按钮,说明哪一个是真的,还有一个添加按钮,通过javascript动态生成输入框和单选按钮。我已经给两个默认可用的无线电盒子和动态生成的无线电盒子给了相同的“名字”。我用阵列来命名它们。当我选择一个无线电盒时仍然可以选择其他单选按钮以及..我想无法使用此选项..请帮助..

以下是动态生成的输入框和单选框

的javascript代码
var doc_index = <?php echo $fans; ?>;//rows - 1

    function AddDocRow(){

        doc_index ++;
        index = doc_index;

        doc_html = "<tr id='doc_" + index + "'>" +
            "<td>"+ (index+1) +"</td>" +
            "<td>" +

            "<input type='text' class='span12'  id='option[" + index + "]' name='option[" + index + "]' placeholder='' />" +

            "</td>" +
            "<td><a href='javascript:void(0);' onclick='RemoveDocRow(" + index + ")'><i class='icon-remove red'></i></a></td>"+
            "<td>"+

            "<label>"+
            "<input type='radio' name='right[" + index + "]' value='1' /><span class='lbl'></span>"+
            "</label>"+

            "</td>"+
            "</tr>";


        $('table#doc_rows tbody').append(doc_html);
        //number ++;
    }

这是默认的两个选项的代码..

                                 <td>
                                    <label>
                                        <?php $check=($r['is_true']==1) ? 'checked="checked"' :''; ?>
                                        <input type="radio" <?php echo $check;  ?> name="right[<?php echo $counter1; ?>]" value="1" id="radio" /><span class="lbl"></span>
                                    </label>

请帮助!!

4 个答案:

答案 0 :(得分:4)

两个或多个单选按钮需要具有相同的EXACT名称才能为其提供“唯一”选择选项。您的无线电名称是动态的,每个名称都有不同的名称。

答案 1 :(得分:0)

广播的名称应为unique,即您想要分组的单选按钮是什么。

"<input type='radio' name='radioGroupName' value='1' /><span class='lbl'></span>"+

您可以为id属性应用索引逻辑。

答案 2 :(得分:0)

单选按钮不具有相同的name - 它们必须具有相同的名称才能被分组为同一组单选按钮。

我认为只需将每个名称更改为name="right"就足够了

答案 3 :(得分:0)

更改

"<input type='radio' name='right[" + index + "]' value='1' /><span class='lbl'></span>"

"<input type='radio' name='right' id='right[" + index + "]' value='1' /><span class='lbl'></span>"

"<input type='radio' name='right' value='+ index  +' /><span class='lbl'></span>"

这样你可以给它们同名,并通过id

来区分它们