Jquery 将帐单复制到发货地址文本输入阵列

Jquery 将帐单复制到发货地址文本输入阵列,jquery,forms,input,Jquery,Forms,Input,我想知道,当输入值的名称是数组时,如何获取输入值 例如: <tr> <td>Address 1:</td> <td><input type="text" name="billing_info[]" /></td> </tr> <tr> <td>Address 2:</td> <td><input type="text" n

我想知道,当输入值的名称是数组时,如何获取输入值

例如:

<tr>
    <td>Address 1:</td>
    <td><input type="text" name="billing_info[]" /></td>
</tr>   
<tr>
    <td>Address 2:</td>
    <td><input type="text" name="billing_info[]" /></td>
</tr>   
<tr>
    <td>City:</td>
    <td><input type="text" name="billing_info[]" /></td>
    <td>State:</td>
    <td><input type="text" name="billing_info[]" /></td>
</tr>   

    <th><p>Shipping Info</p></th>

<tr>
       <td colspan="2">
            <input type="checkbox" id="shipping_address" 
             name="shipping_checkbox" />Same as Billing Address </td>
</tr>
<tr>
       <td>Address 1:</td>
       <td><input type="text" name="shipping_info[]" /></td>    

地址1:
地址2:
城市:
声明:
运输信息

与帐单地址相同 地址1:
似乎有很多使用jQuery复制输入值的例子,但是如何从
账单信息[]
获取值并将其复制到
配送信息[]

您可以这样做

$('#copy').click(function() {
    var value = '';
    $('input[name="billing_info[]"]').each(function() {
        value += this.value;
    });
    $('input[name="shipping_info[]"]').val(value);
});
在这里拉小提琴

你可以做的

$('#copy').click(function() {
    var value = '';
    $('input[name="billing_info[]"]').each(function() {
        value += this.value;
    });
    $('input[name="shipping_info[]"]').val(value);
});

在这里拨弄

假设您有相同数量的shipping元素和billing元素,并且它们在您的html中有相应的位置,这应该可以工作

var shipping = $("input[name='shipping_info[]']");
var billing = $("input[name='billing_info[]']");
shipping.each(function(i, o) {
  $(billing.get(i)).val($(o).val());
}) 

请参阅jsFiddle上的工作演示:

假设您有相同数量的发货元素和账单元素,并且它们在html中有相应的位置,这应该可以工作

var shipping = $("input[name='shipping_info[]']");
var billing = $("input[name='billing_info[]']");
shipping.each(function(i, o) {
  $(billing.get(i)).val($(o).val());
}) 

请参阅JSFIDLE上的工作演示:

您的输入需要具有唯一的id。然后可以像这样使用JQuery:

$('#shippingaddress1').val($('#billingAddress1').val());

对于每对输入

您的输入需要有唯一的id。然后可以像这样使用JQuery:

$('#shippingaddress1').val($('#billingAddress1').val());

对于每对输入

使用迭代器
i
选择要更新的装运输入,对每对输入进行迭代:

$('#copy').click(function(){
    $('input[name="billing[]"]').each(function(i, el){
        $('input[name="shipping[]"]').eq(i).val($(this).val());
    });
});

(我的代码假设您将此操作绑定到单击按钮中)

迭代每个操作,使用迭代器
i
选择要更新的装运输入:

$('#copy').click(function(){
    $('input[name="billing[]"]').each(function(i, el){
        $('input[name="shipping[]"]').eq(i).val($(this).val());
    });
});

(我的代码假设您将此操作绑定到单击按钮上)

谢谢您,亚当,这太棒了。是时候研究迭代器了。谢谢你,亚当,这太棒了。是时候研究迭代器了。谢谢你,尼古拉。但此函数实际上将所有值合并到一个“value”变量中。很抱歉,我知道这正是您需要的!:)谢谢你,尼古拉。但此函数实际上将所有值合并到一个“value”变量中。很抱歉,我知道这正是您需要的!:)请注意,您可能不希望在状态区域中使用无约束值。纽约,纽约,纽约,纽约,纽约,纽约等等,都是你会得到的价值观。请使用下拉列表。请注意,您可能不希望在状态区域中使用无约束值。纽约,纽约,纽约,纽约,纽约,纽约等等,都是你会得到的价值观。使用下拉列表代替。