J'essaie d'obtenir l'id à partir d'une balise div et de le consoler.log mais je ne suis pas défini. Des idées pourquoi est-ce arrivé?

<?php $id = get_the_ID(); ?>
<div class="about-cont" id="<?php echo $id ?>"></div>

<script>
    jQuery('.about-cont').click(function(el){
         console.log(jQuery(el.target).attr('id')); 
    });
</script>
1
ddd 7 avril 2020 à 13:40

3 réponses

Meilleure réponse

Essayez avec ça.

<script>
    jQuery('.about-cont').click(function(){
         console.log(jQuery(this).attr('id')); 
    });
</script>
2
Krupal Panchal 7 avril 2020 à 10:45

Vous pouvez utiliser l'argument event pour trouver facilement la cible cliquée. Vous pouvez également empêcher tous les événements liés à cette action en utilisant event.preventDefault(); dans le bloc fonction.

<script type='text/javascript'>
    jQuery('.about-cont').click(function(event){
         console.log(jQuery(event.currentTarget).attr('id')); 
         //or
         console.log(jQuery(event.target).attr('id')); 
    });
</script>
0
Jithin Vijayan 8 avril 2020 à 14:00

Vous pouvez faire comme ça, (this.id) est récupérer l'identifiant de l'élément actuel.

<?php $id = 1; ?>

<div class="about-cont" id="<?php echo $id ?>">click</div>

<script>
    jQuery('.about-cont').click(function(el){
         console.log(this.id); 
    });
</script>
0
krish patel 8 avril 2020 à 14:46