2013-03-26 9 views
0

Je dois copier deux valeurs de champs de deux champs individuels à leurs champs correspondants plus loin dans un autre formulaire sur la même page.Copier la valeur du champ d'un champ à un autre

Champ de saisie: Prénom Champ de saisie: Nom

Copier ces valeurs à:

Champ de saisie: facturation Nom Champ d'entrée: Expédition Prénom

J'ai essayé ce qui suit code en vain, je l'ai piraté à partir d'un autre site qui a une case à cocher pour la même chose, dans mon cas, il y a un formulaire pour entrer le prénom, le nom et l'email, le client clique sur le bouton Continuer former des charges, cette forme est où je voudrais auto- Remplissez le prénom/nom selon le formulaire initial.

Ceci est le code que j'utilise entre le dans le document. Les champs sont générés par défaut comme ceci, malheureusement je ne peux pas changer l'ID ni les valeurs de nom.

Prénom:

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

Nom:

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

Continuer Bouton:

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

facturation Prénom:

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

facturation Nom:

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

Je pense, mais peut-être tort, que parce que le Javascript Continuer le bouton d'envoi a un nom contenant un point (expédition [de checkout.update_steps]), ce casse, mais je Je ne suis pas sûr.

J'ai également noté que les champs "Prénom", "Nom" et "Continuer" sont sur une forme séparée, les données sont envoyées au deuxième formulaire sur la même page via Ajax. Le premier formulaire a name = "step_one_contact_information_form" et le second formulaire (Billing First Name, Billing Name) a le nom = "step_two_billing_address".

Des idées?

Merci pour votre conseils!

Répondre

0

Je vous suggère de le faire avec jQuery.Il est très simple, je l'ai fait pour vous: http://jsfiddle.net/FPsdy/1/

Voici un exemple du code:

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

J'ai essayé. Ça n'a pas marché, parce que je suis un idiot. Il existe deux formes séparées sur la page ... Première forme:

Deuxième forme: il semble donc que je besoin de savoir comment passer les valeurs d'une forme à la forme suivante, mais je n'ai aucune idée de comment faire cela. Des idées? Merci pour votre aide jusqu'à présent, il est apprécié beaucoup! –

0

Essayez quelque chose comme ceci:

Ajouter un événement onclick à votre bouton (de préférence avec les écouteurs d'événement, mais la façon suivante fonctionnera également)

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

et de changer votre fonction pour faire quelque chose comme ceci:

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; 
} 

Vous pouvez utiliser document.getElementByID("elm_[x]") au lieu si les id seront toujours les mêmes (remplacer [x] avec leurs ID respectifs)

Aussi, je recommande de changer le bouton « bouton », tapez donc si vous n'allez l'utiliser pour soumettre le formulaire:

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

Hope this helps

+0

J'ai essayé ceci. Ça n'a pas marché, parce que je suis un idiot. Il existe deux formes séparées sur la page ... Première forme: Deuxième forme: il semble donc que je besoin de savoir comment passer les valeurs d'une forme à la forme suivante, mais je n'ai aucune idée de comment faire cela. Des idées? Merci pour votre aide jusqu'à présent, il est apprécié beaucoup! –

Questions connexes