I have a card div in my application. When the user clicks this card element, it should fire a modal. However, I can't seem to attach the eventlistener for all elements inside the card element.
The card element looks like this:
<div class="card" data-id=${index}>
<div class="card-img-container">
<img class="card-img" src="${thumbnail}" alt="profile picture">
</div>
<div class="card-info-container">
<h3 id="name" class="card-name cap">${firstname} ${lastname}</h3>
<p class="card-text">${email}</p>
<p class="card-text cap">${city}, ${state}</p>
</div>
</div>
How do I create an eventlistener that listen for all the elements inside the card element? Here's what my eventlistener looks like:
document.querySelector('.card').addEventListener('click', (e) => {
let dataId = parseInt(e.target.dataset.id);
let user = users[dataId];
showModal(user);
document.getElementById('modal-close-btn').addEventListener('click', () => {
const modal = document.querySelector('.modal-container');
document.body.removeChild(modal);
});
});