Javascript中的重复单选按钮组

时间:2012-05-18 15:08:29

标签: php javascript jquery

我遇到了一些javascript代码的问题,并想知道是否有人可以提供帮助。我正在处理注册表,特别是“注册其他人”部分。我的代码工作得很好,除非我尝试在javascript中复制单选按钮组,它似乎不想更改组名属性。

这是javascript:

<script type="text/javascript">
$(document).ready(function(){

    $('#add').click(function() {
    $('<div class="container_add_registrant" >
    <p class="text_content">First name:<br /><input type="text" name="add_registrant[][fname]" id="add_registrant[][fname]" /></p>
    <p class="text_content">Last name:<br /><input type="text" name="add_registrant[][lname]" id="add_registrant[][lname]" /></p>
    <p class="text_content">Workout option: <?php get_event_options_additional($event_id); ?></p>

    <p class="text_content">Shirt size:<input type="radio" name="add_registrant[][shirtsize]" value="S" id="S" />S&nbsp;&nbsp;<input type="radio" name="add_registrant[][shirtsize]" value="M" id="M" />M&nbsp;&nbsp;<input type="radio" name="add_registrant[][shirtsize]" value="L" id="L" />L&nbsp;&nbsp;<input type="radio" name="add_registrant[][shirtsize]" value="XL" id="XL" />XL</p>

    <p class="text_content">Is this person a cancer survivor?:<input type="radio" name="add_registrant[][survivor]" value="Y" id="Y" />Yes <input type="radio" name="add_registrant[][survivor]" value="N" id="N" />No </p></div>')
    .fadeIn('slow').appendTo('.add_registrant');

    i++;
    });

    $('#remove').click(function() {
        if(i > 0) {
            $('.container_add_registrant:last').remove();
            i--;
        }
    });

});

 </script>

这部分代码似乎是问题所在:

<p class="text_content">Shirt size:
   <input type="radio" name="add_registrant[][shirtsize]" value="S" id="S" />S&nbsp;&nbsp;
   <input type="radio" name="add_registrant[][shirtsize]" value="M" id="M" />M&nbsp;&nbsp;
   <input type="radio" name="add_registrant[][shirtsize]" value="L" id="L" />L&nbsp;&nbsp;
   <input type="radio" name="add_registrant[][shirtsize]" value="XL" id="XL" />XL
</p>

这是小提琴网(对不起,第一次使用这个网站)

http://jsfiddle.net/4qaaN/1/

点击“注册其他人”至少2次,你会看到我通过单选按钮获得的问题

1 个答案:

答案 0 :(得分:1)

由于您已经计算了i的新注册人数,因此您可以在运行时将其添加到名称中以将其分开。这是一个example

基本上,它只是

'<input type="radio" name="add_registrant[][shirtsize]' + i + '" value="S" id="S" />'

i可以在任何一方,无论你喜欢什么解析服务器端。