IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Uncaught ReferenceError: contactchoice is not defined at HTMLInputElement.onclick


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Par défaut Uncaught ReferenceError: contactchoice is not defined at HTMLInputElement.onclick
    Hello,

    Je me lance dans le js et pour mon 1er script, j'ai tenté de faire un truc simple :

    J'ai deux div "contact" et "contact-choice", par défaut, c'est la première qui est affichée. Au clic sur un bouton, je voudrais afficher la deuxième (et vice versa).
    Sous code-pen (https://codepen.io/waf-alors/pen/ebrddZ) , j'ai fais un truc qui fonctionne bien, mais lorsque je l'intègre sur mon site, ça ne fonctionne plus :

    Uncaught ReferenceError: contactchoice is not defined at HTMLInputElement.onclick

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    document.getElementById("contact").addEventListener("click", function contact() {
      document.getElementById('contact').style.display = 'block';
      document.getElementById('contact-choice').style.display = 'none';
      console.log('contact');
    });
     
     
    document.getElementById("contactchoice").addEventListener("click", function contactchoice () {
      document.getElementById('contact-choice').style.display = 'block';
      document.getElementById('contact').style.display = 'none';
      console.log('contact');
    });
    Je récupère bien les id, mais visiblement, il ne trouve pas les fonctions. D'où vient le problème ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    A quel endroit est placé le script dans ta page ?
    => a quel moment est il exécuté ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Par défaut
    Le script est placé en bas de page, juste avant la balise </body>
    J'ai deux boutons pour switcher entre les deux divs, donc le script est appelé au clic

  4. #4
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    a priori il ne trouve pas l'element avec l'id contact-choice ...
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    29
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Mars 2018
    Messages : 29
    Par défaut
    J'en suis arrivé à la même conclusion, j'ai donc fait le test suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    console.log("script #1: %o", document.getElementById("contact")); //
    console.log("script #2: %o", document.getElementById("contact-choice"));
    et dans la console j'ai bien contact-choice

    script #1: <div id="contact" style="background: red; display: block;">....</div>
    script #2: <div id="contact-choice" style="background: grey; display: none;">....</div>

  6. #6
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 658
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 658
    Billets dans le blog
    1
    Par défaut
    et l'element est instancié quant le addevent est lancé ?
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

Discussions similaires

  1. Uncaught ReferenceError: exports is not defined
    Par tunisiano44 dans le forum TypeScript
    Réponses: 0
    Dernier message: 07/08/2017, 12h56
  2. Uncaught ReferenceError: detection is not defined
    Par Alexletyran dans le forum jQuery
    Réponses: 3
    Dernier message: 02/05/2017, 13h59
  3. Réponses: 20
    Dernier message: 09/11/2016, 16h35
  4. Uncaught ReferenceError: geolocate is not defined
    Par Atom87 dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 17/08/2015, 14h49
  5. Uncaught ReferenceError: survoleOn is not defined
    Par Kirax999 dans le forum Google Chrome
    Réponses: 0
    Dernier message: 07/08/2013, 03h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo