2013-03-26 56 views
0

我需要从两个单独的领域两场值的另一种形式的进一步复制到其对应的字段在同一页上。域值复制到另一个

输入字段:名 输入字段:姓

复制这些值:

输入字段:计费名 输入字段:航运名字

我曾尝试以下代码无济于事,我从另一个网站入侵它,它有一个同样的东西的复选框,在我的情况下,有一个表格用于输入客户的名字,姓氏和电子邮件,然后客户点击继续按钮,然后点击下一步形式的负载,这种形式是我想要自动化的地方,根据初始表格填写姓氏/姓氏。

这是我的文档之间使用的代码。

<script type = "text/javascript"> 
function FillBilling(f) { 
    if(f.dispatch[checkout.update_steps].submit == true) { 
    f.user_data[firstname].value = f.user_data[b_firstname].value; 
    f.user_data[lastname].value = f.user_data[b_lastname].value; 
    } 
} 
</script> 

的字段默认是这样产生的,不幸的是我无法改变的ID,也不是名值。

名字:

<input type="text" class="input-text " value="" size="32" name="user_data[firstname]" id="elm_6"> 

姓:

<input type="text" class="input-text " value="" size="32" name="user_data[lastname]" id="elm_7"> 

继续按钮:

<input type="submit" value="Continue" name="dispatch[checkout.update_steps]"> 

结算名字:

<input type="text" class="input-text " value="" size="32" name="user_data[b_firstname]" id="elm_14"> 

结算姓:

<input type="text" class="input-text " value="" size="32" name="user_data[s_firstname]" id="elm_16"> 

我想,但可能是错误的,因为继续提交按钮具有包含一个点(派遣[checkout.update_steps])的名称,这打破了使用Javascript,但我米不确定。

我也注意到,“名字”,“姓氏”字段和“继续”按钮是在一个单独的窗体上,数据通过Ajax发送到同一页上的第二个窗体。第一个表单的名称=“step_one_contact_information_form”,第二个表单(Billing First Name,Billing Last Name)的名称=“step_two_billing_address”。

任何想法?

感谢您的咨询!

回答

0

我建议你用jQuery做到这一点。这是非常简单的我做了这个给你: http://jsfiddle.net/FPsdy/1/

下面是代码示例:

$('input[type=submit]').click(function(){ 
    $('#elm_14').val($('#elm_6').val()); 
    $('#elm_16').val($('#elm_7').val()); 
}); 
+0

我尝试这样做。它没有用,因为我是个白痴。 有在页面上两个不同的形式... 第一种形式: <形式方法= “POST” 行动= “/” 类= “CM-AJAX厘米Ajax的力” 名称= “step_one_contact_information_form”> 第二种形式: <形式方法= “邮报” 行动= “/” 级= “CM-AJAX厘米的Ajax力厘米的Ajax全渲染” NAME = “step_two_billing_address”> 这样看来我需要找出如何将值从一个表单传递到下一个表单,但我不知道如何执行此操作。有任何想法吗?感谢您的帮助,非常感谢! – 2013-03-26 23:24:10

0

尝试是这样的:

onclick事件添加到您的按钮(最好与事件听众,但下面的方式也将工作)

<input type="submit" value="Continue" name="dispatch[checkout.update_steps]" onclick="return fillBilling()"> 

并改变你的功能看起来是这样的:

function fillBilling() { 
    document.getElementsByName("user_data[b_firstname]")[0].value = document.getElementsByName("user_data[firstname]")[0].value; 
    document.getElementsByName("user_data[s_firstname]")[0].value = document.getElementsByName("user_data[lastname]")[0].value; 
    return false; 
} 

您可以使用document.getElementByID("elm_[x]")代替如果ID的将永远是相同的(更换[X]与它们各自的ID)

另外,我建议改变按钮输入“按钮,”所以,如果你”再不会用它来提交表单:

<input type="button"... /> 

希望这有助于

+0

我试过了。它没有用,因为我是个白痴。 有在页面上两个不同的形式... 第一种形式: <形式方法= “POST” 行动= “/” 类= “CM-AJAX厘米Ajax的力” 名称= “step_one_contact_information_form”> 第二种形式: <形式方法= “邮报” 行动= “/” 级= “CM-AJAX厘米的Ajax力厘米的Ajax全渲染” NAME = “step_two_billing_address”> 这样看来我需要找出如何将值从一个表单传递到下一个表单,但我不知道如何执行此操作。有任何想法吗?感谢您的帮助,非常感谢! – 2013-03-26 23:23:38

相关问题