Selection dom

Résolu
papadinosaure Messages postés 7 Statut Membre -  
papadinosaure Messages postés 7 Statut Membre -

Bonsoir à tous,

J'ai plusieurs articles  qui ont chacun plusieurs paragraphes.
J'ai associé une classe du même nom au dernier paragraphe de chacun de mes articles, avec comme contenu textuel: "un bouton"

<article class="article">
<p></p>
<p class="bouton">un bouton </p>
</article>

<article class="article">
<p></p>
<p class="bouton">un bouton </p>
</article>

etc ...


Je voudrais associer ces paragraphes à une méthode comme : document.querySelector("bouton").addEventListener("click", fonction)
Pour qu'en cliquant sur un de ces paragraphes en particulier, cela déclenche qqchose.

Le problème c'est que je n'arrive qu'à selectionner le paragraphe "bouton" du premier article.

document.querySelector(".un bouton")
.addEventListener("click", (event) => {event.target.innerHTML = "ok";});


Ou alors de faire un querySelector sur une div englobant tous les articles, mais dans ce cas tous les elements deviennent cliquable, et ce n'est pas ce que je veux.

document
.querySelector(".classeDeMaDivEnglobantLesArticles")
.addEventListener("click", (event) => {....}


 

N'y a-t-il pas un moyen de sélectionner directement le paragraphe sur lequel je clique ?

1 réponse

jordane45 Messages postés 40050 Statut Modérateur 4 754
 

Bonjour

Pour cibler une classe il ne faut pas oublier de mettre le point devant

document.querySelector(".bouton").addEventListener("click", fonction)

0
papadinosaure Messages postés 7 Statut Membre
 

Oui pardon, c'est une négligence de retranscription, mais j'ai bien mis le point dans mes codes.

0
Pitet Messages postés 2845 Statut Membre 527
 

Bonjour,

document.querySelector() retourne effectivement le premier élément correspondant au sélecteur.

Utilise document.querySelectorAll() pour récupérer plusieurs éléments.

document.querySelectorAll('.bouton').forEach((element) => {
  element.addEventListener('click', (event) => {
    // ...
  });
});
1
papadinosaure Messages postés 7 Statut Membre > Pitet Messages postés 2845 Statut Membre
 

Merci beaucoup, je n'avais pas pensé à cette utilisation.

0