Hello,
Ce qui me choque, c'est le type d'évenement "input".
Sauf erreur, apparement le but est de faire une vérification dynamique et immédiate du contenu des champs, dans ce cas, il vaudrait mieux passer par un "keyup" ou "change".
Bonjour à tous,
Je dois créer un formulaire en javascript mais je suis bloquée par ce message d'erreur :
Cannot read properties of null (reading 'addEventListener').
Je pense que mon problème viens du fait que je n'ai pas déclaré le bouton mais je n'en suis pas certaine...
J'ai essayée de le créer mais rien n'y fait...
Voici un extrait de mon JS
Et le code HTML correspondant :
Merci pour votre aide ! :)
Hello,
Ce qui me choque, c'est le type d'évenement "input".
Sauf erreur, apparement le but est de faire une vérification dynamique et immédiate du contenu des champs, dans ce cas, il vaudrait mieux passer par un "keyup" ou "change".
Bonjour, l'erreur indique que tu as essayé d'appelé la méthode addEventListener sur la valeur null
Javascript essai de te dire que cette ligne là:
inputFirstName.addEventListener
lui il l'interprète de cette façon:
null.addEventListener
c'est ce qui provoque l'erreur
la donnée inputFirstName qui et accusé de contenir la valeur null à la place d'un élément du document et définit en haut du fichier via la ligne:
const inputFirstName = document.getElementById("firstName");
La séléction indiqué fait référence à un élément dans le document qui aurait un attribut id avec la valeur firstName
dans la structure HTML que tu nous montres on le voit cet élément il et définit par la ligne:
<input type="text" name="firstName" id="firstName" required>
donc normalement la variable inputFirstName ne devrait pas être null elle devrait contenir un HTMLInputElement
Un cas où la séléction à planté peut-être dut au fait que le Javascript c'est chargé avant le document (donc quand tu fait ta séléction le document n'est pas encore disponible).
Cela peut arrivé si le Javascript et chargé au niveau de la balise head dans un document du genre:
Pour éviter que le Javascript s'exécute trop tôt tu peut posé un événement global (sur le document) qui sert à écouter le chargement du document
@Soundboy39 l'événement input sur un HTMLInputElement permet d'écouté tous les changements de valeur dans la zone de texte il parait très adapté (c'est clairement celui que j'aurais recommandé) pour effectuer des traitement "live" où "dynamique" sur une zone de texte.
@Orivoir21 OK merci pour ma gouverne.