2017-09-25 3 views
0

Il faut dire Bob Miller dans la consolePourquoi Wont It Console.log Le résultat?

Mais au lieu il dit Undefined Undefined

J'apprécierais vraiment si quelqu'un m'a aidé à ce sujet.

<body bgcolor='000000'> 
    <center> 
     <input placeholder='Enter First Name' value='Bob' class='firstName'> 
     <input placeholder='Enter Last Name' value='Miller' class='lastName'> 
    </center> 
</body> 
<script> 
    firstname = document.getElementsByClassName('firstName').value; 
    lastname = document.getElementsByClassName('lastName').value; 
    result = firstname + ' ' + lastname; 
    console.log(result); 
</script> 
+2

getElementsByClassName retourne un HTMLDomArray. Vous devrez faire 'document.getElementsByClassName ('className') [0] .value' puisque le tableau n'a aucune valeur – Gibolt

Répondre

4

procédé document.getElementsByClassName retourne un tableau comme objet, pas un seul. Vous devez accéder à l'élément [0]th de cet objet en accédant à des tableaux avec index, puis obtenir sa valeur. Déclarez également vos variables de manière explicite en utilisant les mots clés var/let/const.

var firstname = document.getElementsByClassName('firstName')[0].value; 
 
// ---------------------------------------------------------^^^------ 
 
var lastname = document.getElementsByClassName('lastName')[0].value; 
 
// -------------------------------------------------------^^^------ 
 
var result = firstname + ' ' + lastname; 
 
console.log(result);
<input placeholder='Enter First Name' value='Bob' class='firstName'> 
 
<input placeholder='Enter Last Name' value='Miller' class='lastName'>