Uncaught TypeError: Cannot read property 'valeur', null, Élément n'existe pas
Avant de vous downvote, j'ai lu beaucoup de questions et il ne m'a pas aidé.
Mon Javascript est alert
renvoie la valeur null, même quand il ya une valeur dans le type d'entrée.
Voici le code :-
<script>
if (document.getElementById('p0002') != null) {
var str = document.getElementById("p0002").value;
}
else {
var str = null;
}
alert(str);
</script>
<input type="hidden" name="p0002" id="p0002" value="1" >
<input type="hidden" name="p0003" id="p0003" value="0" >
<input type="hidden" name="p0004" id="p0004" value="2" >
Elle renvoie toujours null
. L'erreur dans la console dit :
Uncaught TypeError: Cannot read property 'valeur' null
Cherche à résoudre depuis 1 heure. Quel est le problème ici?
Est le jQuery, balise est correcte?
Avez-vous essayé de placer votre javascript soufflet HTML (avant la balise body de clôture)?
Parce que l'élément n'existe pas à l'endroit où vous exécutez votre code (littéralement, vous sortie le champ de saisie APRÈS le code javascript est exécuté). Utiliser un événement onload.
Avez-vous essayé de placer votre javascript soufflet HTML (avant la balise body de clôture)?
Parce que l'élément n'existe pas à l'endroit où vous exécutez votre code (littéralement, vous sortie le champ de saisie APRÈS le code javascript est exécuté). Utiliser un événement onload.
OriginalL'auteur Akshay | 2015-09-24
Vous devez vous connecter pour publier un commentaire.
Envelopper votre
JavaScript
danswindow.onload
. Actuellement votreJavaScript
est en cours d'exécution avant de l'élément existe:Une autre chose que vous pouvez faire est de déplacer la balise de script après les éléments que vous faites référence à:
Peut arriver à tout le monde 🙂 je vais mettre à jour la réponse avec également la possibilité de déplacer le script ci-dessous les définitions d'éléments.
OriginalL'auteur Konstantin Dinev
Votre script doit être exécutée après les entrées ajoutées à DOM. La plupart des crossbrowser façon de rendre votre script fonctionne, est de le déplacer juste avant votre
<body>
balise est fermée, et l'envelopper dans une mise en fonction immédiate:C'est plus rapide à exécuter que d'un
onload
gestionnaire parce que ce n'attend que pour les DOM pour être prêt, pas pour toutes les images à charger. Et, cela fonctionne dans tous les navigateurs.OriginalL'auteur Alexandr Lazarev
Ici votre script doit être après le html.
OriginalL'auteur Harsh Makani