在表单中克隆多个元素

时间:2013-07-30 15:10:52

标签: javascript jquery forms

我正在尝试使用此代码克隆同一div的多个表单元素:唯一的问题是只存储了第一个频率值,而不是来自设备等多个条目的值。

<script type="text/javascript">
    $(document).ready(function() {
        $('#btnAdd2').click(function() {
            var num2     = $('.clonedInput2').length;
            var newNum2  = new Number(num2 + 1);

              var num3     = $('.clonedInput3').length;
            var newNum3  = new Number(num2 + 1);

            var newElem2 = $('#in' + num2).clone().attr('id', 'in' + newNum2);
            newElem2.find(":button").remove();
            newElem2.children(':first')
            .attr('id', 'device' + newNum2)
            .attr('name', 'device' + newNum2);

            var newElem3 = $('#in2' + num2).clone().attr('id2', 'in2' + newNum2);
            newElem3.children(':first')
            .attr('id', 'frequency' + newNum2)
            .attr('name', 'frequency' + newNum2);

            $('#in' + num2).after(newElem2);
            $('#btnDel2').attr('disabled','');

            if (newNum2 == 4)
                $('#btnAdd2').attr('disabled','disabled');
        });

        $('#btnDel2').click(function() {
            var num2 = $('.clonedInput2').length;

            $('#in' + num2).remove();
            $('#btnAdd2').attr('disabled','');

            if (num2 - 1 == 1)
                $('#btnDel2').attr('disabled','disabled');
        });

        $('#btnDel2').attr('disabled','disabled');
    });
</script>

<div id="in1" style="margin-bottom:4px;" class="clonedInput2">

    Device(s): <input type="text" name="device1" id="device1" /> Frequency: <input type="text" name="frequency1" id="frequency1" />
    <input type="button" id="btnAdd2" value="Add device" />
    <input type="button" id="btnDel2" value="Remove device" />
    </div> 

0 个答案:

没有答案