2010-12-30 5 views
0

CODE LIVE: http://jsfiddle.net/nnMYN/Qu'est-ce qui ne va pas dans mon code JavaScript?

Je dois « copier automatiquement l'adresse postale du champ d'adresse de domicile si un utilisateur vérifie la « comme ci-dessus » case à cocher En plus de cela, nous allons désactiver le champ d'adresse de la maison quand. la case à cocher est cochée. " (from here) Qu'est-ce que je fais de mal?

<html> 
    <head> 
    </head> 
    <body> 
     <form> 
      <fieldset> 

       <legend>Billing Information</legend> 

       <p> 
        <label> 
         Postal Address:<br> 
         <textarea name="postaladdress" id="postaladdress"></textarea> 
        </label> 
       </p> 

       <p> 
        Home Address:<br> 
        <label> 
         <input type="checkbox" name="homepostalcheck" id="homepostalcheck"> 
         Same as above 
        </label> 
        <br> 
        <textarea name="homeaddress" id="homeaddress"></textarea> 
       </p> 

      </fieldset> 
     </form> 
     <script type="text/javascript"> 
      var loc = document.getElementById('homepostalcheck'); 
      var home = document.getElementById('homeaddress'); 
      loc.onclick = !loc.checked ? function() {home.disabled = true; home.value = post.value; alert(post.value);} : function() {home.disabled = false; home.select();}; 
     </script> 
    </body> 
</html> 

Répondre

2

Tout ajouter

var post = document.getElementById('postaladdress'); 

Vous continuez à essayer d'accéder au paramètre value de l'objet post, mais il n'y a tel objet post parce que vous ne l'avez pas défini. Si vous ajoutez la ligne ci-dessus après votre définition de home, vous devez être défini! Cela a fonctionné quand je l'ai édité sur jsFiddle.

+0

Cela ne fonctionnait pas complètement, mais j'ai trouvé une solution. Mais merci, cela m'a certainement aidé. Version de travail: http://jsfiddle.net/nnMYN/2/ – DarkLightA

0

Essayez de mettre le javascript function() {

<script type="text/javascript"> 
    (function() { 
     var loc = document.getElementById('homepostalcheck'); 
     var home = document.getElementById('homeaddress'); 
     loc.onclick = !loc.checked ? function() {home.disabled = true; home.value = post.value; alert(post.value);} : function() {home.disabled = false; home.select();}; 
    }); 
</script> 
Questions connexes