@Mark321

Как сверстать ячейки в таблице?

Добрый день. подскажите пожалуйста, есть таблица
такой структуры
<tr>
   <td>
   <td>
   <td>

стоит задача, что бы при клике на любой элемент кроме первого происходило событие
вложенные тд порядка 10
не хочется вешать на каждый обработчик
хочется обернуть их в какой-то тег и тегу задать обработчик
Но не понимаю как это сделать
https://codepen.io/scrappyjs666/pen/ExePMyp
В проекте от такого решения плывет верстка
я пробовал задавать обертку в качестве тега и нашел в интернете решение, которое обнулят все стили тега, но все равно не получилось
как это можно решить
  • Вопрос задан
  • 57 просмотров
Пригласить эксперта
Ответы на вопрос 1
@alexbazhenDev
Не оборачивай td в div внутри tr.
Как вариант, убери все дивы, что написал и в JS тебе потребуется всего один обработчик на самой таблице:
const table = document.querySelector("table");
table.addEventListener("click", (e) => {
  if (e.target.tagName === "TD" && e.target.parentElement.children[0] !== e.target) {
    console.log('Тут твой код');
  }
});

Тут мы проверяем, что target клика пришелся на один из TD, а затем проверяем, что это не первый TD в своем родителе.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы