2010-05-27 4 views

Répondre

5
fonction javascript sur appel

onkeypresss

function copy_data(val){ 
var a = document.getElementById(val.id).value 
document.getElementById("copy_to").value=a 
} 

ÉDITÉ UTILISATION onkeyup ou onblur au lieu

<html> 
<head> 
    <script> 
    function copy_data(val){ 
    var a = document.getElementById(val.id).value 
    document.getElementById("copy_to").value=a 
    }  
    </script> 
</head> 
<body> 
<input type="text" name ="a" id="copy_from" onkeyup="copy_data(this)"/> 
<input type="text" name ="a" id="copy_to"/> 
</body> 
</html> 
+1

Cette première ligne pourrait être simplement 'var a = val.value'. Il n'est pas nécessaire de rechercher l'élément en utilisant le 'id 'de l'élément que vous avez déjà. –

5

en jQuery, quelque chose comme ceci:

$("#txtBox1").keypress(function() { 
    $("#txtBox2").val($(this).val()); 
} 
+0

je ne voyais pas mention dans jQuery la question ou les tags ... –

+0

@Andy EI se demandait pourquoi les gens auraient des problèmes avec les réponses "utiliser le problème de jQuery résolu", mais ça commence à me déranger aussi :-) (et je suis un grand fan de jQuery) – Pointy

+0

@Andy E's head - le code affiché fait exactement ce dont il a besoin, et je n'ai vu aucune mention de "pas de jquery" non plus. jQuery rend la gestion des événements simple et automatiquement cross-browser. – womp

2

Vous ne facilement avec JQuery:

<input type="text" id="box1" /> 
<input type="text" id="box2" /> 

<script type="text/javascript"> 
$(function(){ 
    $("#box1").keypress(function() 
    { 
    $("#box2").val($(this).val()); 
    } 
}); 
</script> 
+0

Vous pouvez facilement le faire sans jQuery aussi. Je ne comprends pas l'exigence de forcer les gens avec jQuery, parfois jQuery n'est pas une nécessité et parfois les gens doivent apprendre à utiliser correctement le DOM d'abord. –

+2

La tête de @Andy E: Juste pour éduquer les gens à quel point il est facile de faire les choses avec jquery et résoudre les problèmes croisés des navigateurs hors de la boîte sinon ils vont utiliser des moyens de style ancien. Nous devons les informer pour inclure jquery tag :) – Sarfraz

0

Vous pouvez obtenir par ce ...

function FillBilling(f) { 
 
    if(f.billingtoo.checked == true) { 
 
    f.billingname.value = f.shippingname.value; 
 
    f.billingcity.value = f.shippingcity.value; 
 
    } 
 
} 
 
To add more fields, just add to the parameters shown above...like this: 
 
    f.billingstate.value = f.shippingstate.value; 
 
    f.billingzip.value = f.shippingzip.value; 
 
The HTML for the form you will use looks like this: 
 
<b>Mailing Address</b> 
 
<br><br> 
 
<form> 
 
Name: 
 
<input type="text" name="shippingname"> 
 
<br> 
 
City: 
 
<input type="text" name="shippingcity"> 
 
<br> 
 
<input type="checkbox" name="billingtoo" onclick="FillBilling(this.form)"> 
 
<em>Check this box if Billing Address and Mailing Address are the same.</em> 
 
<P> 
 
<b>Billing Address</b> 
 
<br><br> 
 
Name: 
 
<input type="text" name="billingname"> 
 
<br> 
 
City: 
 
<input type="text" name="billingcity"> 
 
</form>

Questions connexes