如何使用jQuery将一个数组元素值复制到另一个数组元素中

时间:2011-02-05 04:36:42

标签: jquery arrays input

我有一个名为first_name[120]的文本输入(预定义键),我想通过单击按钮将值复制到另一个first_name[different predefined key]字段。

表单中可能还有其他first_name[different predefined key]字段,因此我需要灵活地让其余的工作。有什么建议吗?

编辑:

抱歉,我想我需要提供更多信息。

表单包含礼品收件人信息的字段列表。表格中可能列出了多个礼品,每个礼品都有自己的字段集,用于输入礼品收件人的信息。基本上,我正在尝试为表单中的后续礼品收件人字段制作“从上面复制信息”功能。

编辑2:

这是我的解决方案而且有效。如果可能,请建议改进​​。它实际上绑定了一个包含所有礼物列表的下拉列表。因此,代码根据下拉列表的ID(例如123 | 130)知道从哪个部分提取信息以及从哪里删除信息。

   $('.copy_info').live('change', function(){

    var ids = $(this).val().split('|');

    var from = ids[0];
    var to = ids[1];

    $('#form_fields-' + from + " :input").each(function(){

        var name = $(this).attr('name');
        var new_name = name.replace(/[\d+]/,to);

        $('#form_fields-' + to + ' input[name="' + new_name + '"]').val($(this).val());

    });

});

1 个答案:

答案 0 :(得分:2)

$('button').click(function() {
    $('input[name="first_name[xxx]"]').val($('input[name="first_name[120]"]').val());
});

xxx是您要将120复制到的第一个键的编号。

另外请记住,您可以访问使用this单击的特定按钮,或将其包装在带有$(this)的jQuery对象中,以更具体地定位您选择操作的输入。