Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème d'évenement

onclick

    27 mai 2019 à 5:31:20

    Salut tous le monde, je travail sur une page qui utilisé beaucoup de Ajax. chaque bouton a son effet, mais le problème c'est que au bout d'un moment javascript ou bien quoi il ne veut plus affecté un évènement à un élément. je vous montre le code menu
    <var>

    <div>
        <strong>Dashboard</strong>
    </div>
    
    <div>
        <strong>Users controle</strong>
    </div>
    
    <div>
        <strong>ADD</strong>
    </div>
    
    <div>
        <strong>Notification</strong>
    </div>
    

    </var>

    sous menu pour la section add <var>

    <div> Book/Article</div>
    <div> Game</div>
    

    </var>
    Javascript

    $('#add').on('click', ()=&gt;{
        if(i_have_to_go()){
            let conf = confirm('Do you want to exit ?');
            if(conf)
                ajaxGet('./add.php', here, putIn);
        }
        else
            ajaxGet('./add.php', here, putIn);
        removeAllActive();
        $('#add').addClass('active');
        setTimeout(()=&gt;{
    
                let book = document.getElementById('book');
                let game = document.getElementById('game');
    
                book.addEventListener('click', ()=&gt;{
                    sub_menu('addBook.php', putIn);
                });
    
                game.onclick = ()=&gt;{
                    sub_menu('addGame.php', putIn);
                };
        }, 1500);
    });
    

    function sub_menu(url, callback){

    let rep = i_have_to_go();
    let here_in = document.getElementById('add_menu');
    here_in = $(here_in);
    if(rep){
        rep = confirm('Do you want to exist ?');
           if(rep)
              ajaxGet(url, here_in, callback);
    }
    else
        ajaxGet(url, here_in, callback);
    

    }

    je signal que le problème est dans les deux éléments qui ont comme id book et game information de plus: quand je tape dans la console par exemple book.onclick() elle me renvoie undefined


    Merci pour votre aide, et bonne journée à tous

    -
    Edité par FouadHachour 27 mai 2019 à 5:45:42

    • Partager sur Facebook
    • Partager sur Twitter
      27 mai 2019 à 13:24:06

      Bonjour.

      FouadHachour a écrit:

      je signal que le problème est dans les deux éléments qui ont comme id book et game information de plus: quand je tape dans la console par exemple book.onclick() elle me renvoie undefined

      C'est normal étant donné que dans le code que tu nous montre, il n'y a aucun élément HTML qui ait un attribut id et par conséquent comme valeur book.

      De plus que si quand tu dis console tu veux dire celle du navigateur, vu que la définition de la variable est faite dans une fonction, de plus avec let, tu ne peux pas y accéder depuis l'extérieur de celle-ci.

      • Partager sur Facebook
      • Partager sur Twitter

      Face a quelqu'un pour qui l'on n'éprouve que de l'aversion et du mépris, les yeux d'un homme deviennent extrêmement froids et cruels.

        27 mai 2019 à 14:24:13

        Lartak a écrit:

        Bonjour.

        FouadHachour a écrit:

        je signal que le problème est dans les deux éléments qui ont comme id book et game information de plus: quand je tape dans la console par exemple book.onclick() elle me renvoie undefined

        C'est normal étant donné que dans le code que tu nous montre, il n'y a aucun élément HTML qui ait un attribut id et par conséquent comme valeur book.

        De plus que si quand tu dis console tu veux dire celle du navigateur, vu que la définition de la variable est faite dans une fonction, de plus avec let, tu ne peux pas y accéder depuis l'extérieur de celle-ci.

        Merci pour votre réponse,

        Premièrement c'est Openclassroom qui a supprimé  les attributs qui balise html, le bon code il devrait avoir un id comme je l'ai mentionné

        <div class="menu">
            <div class="controle" id="dashboard">
                <i class="fa fa-columns"></i><strong>Dashboard</strong>
            </div>
        
            <div class="controle" id="user_controle">
                <i class="fa fa-users"></i><strong>Users controle</strong>
            </div>
        
            <div class="controle" id="add">
                <i class="fa fa-calendar"></i><strong>ADD</strong>
            </div>
        
            <div class="controle" id="notification">
                <i class="fa fa-rss"></i><strong>Notification</strong>
            </div>
        </div>
        
        <div id="sub_menu">
            <div class="option" id="book"><i class="fa fa-book"></i> Book/Article</div>
            <div class="option" id="game"><i class="fa fa-gamepad"></i> Game</div>
        </div>

        en plus je ne sais pas trop a propos de ce sujet mais malgré que c'est déclaré comme let mais j'accède normal



        • Partager sur Facebook
        • Partager sur Twitter

        problème d'évenement

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown