Bonjour, je souhaiterai récupérer la source d'un événement au clic sur un élément d'une liste pour ensuite traiter des données, mais je ne sais pas trop comment faire.
J'ai regardé un peu à droite à gauche sur internet, en trouvant des bout de code javascript qui me semblent corrects, il me reste plus qu'à trouver la solution pour passer un paramètre dans une fonction avec addEventListener.
Pour cela je dispose du code HTML suivant :
Et le javascript qui va avec :
Code html : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 <ul> <li id="time0"><p>6 trimestres</p><p>18 mois</p></li> <li id="time1"><p>8 trimestres</p><p>24 mois</p></li> <li id="time2"><p>10 trimestres</p><p>30 mois</p></li> </ul>
Je sais que ça fonctionne avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 document.getElementById('time0').addEventListener('click', getTimeRow); //Que mettre ici? document.getElementById('time1').addEventListener('click', getTimeRow); document.getElementById('time2').addEventListener('click', getTimeRow); function getTimeRow(event) { event = event || window.event; //pour la compatibilité avec IE var elem = event.target || event.srcElement; //pour la compatibilité avec IE var timeRow = 0; if (elem.id == "time1") { timeRow = 1; } else { if (elem.id == "time2") { timeRow = 2; } } console.log(timeRow); }
Mais ce n'est pas ce que je veux, d'ailleurs j'obtiens parfois une valeur qui ne correspond pas à l'élément de la liste ciblé, est-ce qu'il y aurait une erreur dans mon javascript?
Code html : Sélectionner tout - Visualiser dans une fenêtre à part <li id="time1" onclick="getTimeRow(event);"><p>8 trimestres</p><p>24 mois</p></li>
Bref j'ai essayé ça :
Mais ça ne marche pas.
Code : Sélectionner tout - Visualiser dans une fenêtre à part document.getElementById('time0').addEventListener('click', getTimeRow(event));
Si quelqu'un a une solution je suis preneur, merci d'avance !
Partager