let addToCart = document.querySelectorAll('#app') addToCart.forEach((btn) => { btn.addEventListener('click',(e) => { if (e.target.classList.contains('add-to-cart')) { console.log('click!') } }) })Estoy trabajando con botones dinámicos y literales de plantilla para hacer un carrito de compras. Busco extraer la información de mongo DB, pero cuando hago clic en el botón Agregar solicitud, solo funciona unas pocas veces.
Gracias por adelantado
Estás usando querySelectorAll('#app')
El # significa que desea obtener una ID , pero querySelectorAll selecciona varias Id y el documento HTML acepta solo una id por uso de página en lugar querySelector('#app') .
let app = document.querySelector('#app') app.addEventListener('click',(e) => { if (e.target.classList.contains('add-to-cart')) { console.log('click!') } }) // Alernative way using querySelectorAll /* const btns = document.querySelectorAll('.add-to-cart'); [...btns].forEach(btn=>btn.addEventListener('click',()=>console.log('click!'))) */ <div id="app"> <li> Item 1 <button class="add-to-cart">+</button> </li> <li> Item 2 <button class="add-to-cart">+</button> </li> </div>