DOM: recup data-id via event

Résolu
papadinosaure Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -  
papadinosaure Messages postés 7 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Je travail sur une page panier, où je veux pouvoir changer la quantité d'un produit et identifier ce produit parmi d'autres.

J'ai une page avec plusieurs articles(".cart__item") dans une section("#cart__itmes").

Chaque article a data-id comme attribut et un input type="number".

J'ai une méthode qui récupère la valeur changée de l'input :


document.querySelector("input")

    .closest("#cart__items")

    .addEventListener("change", (event) => {

      var newValInput = (event.target.value);

      alert(newValInput);

    });




Et ce que je voudrais, c'est d’accéder au data-id de l'article qui est la cible de l’événement.

Ca fait 12h que je tourne en rond, pouvez m'apporter votre aide ?

2 réponses

  1. jordane45 Messages postés 30427 Date d'inscription   Statut Modérateur Dernière intervention   4 831
     

    Bonjour,

    var id = event.target.getAttribute('data-id');

    Et si ton data-attribute ne se trouve dans au niveau de l'input, dans ce cas il faut aller le chercher dans le "parent"

    Pour ça, tu peux utiliser 

    parentElement

    1
  2. papadinosaure Messages postés 7 Date d'inscription   Statut Membre Dernière intervention  
     

    Merci pour ta réponse,

    Entre temps j'ai trouver une autre solution, : 

    var newValInput2 = (event.target.closest("article"));
          alert(newValInput2.dataset.id);

    Mais je vais tester ta solution, ça m'intéresse.

    Encore merci et bonne journée.

    0