Отменить событие для ячейки таблицы
Добрый день.
на строку повесил событие <tr onClick="javascript:CallPrint({$key});" > работет - уря. но есть ячейка с чекбоксом, при нажатии на котором так же срабатывает событие. Вопрос - как отменить событие на конкретной ячейке? что-то <td onClick=""> - но оно не работает если нельзя - то как получить номер колонки в которой произошло нажатие мышки? чтобы поставить заглушку в самой функции. |
<table style="border: 1px solid black" width="100" height="100"> <tr onClick="javascript:alert('123');"> <td><input type="checkbox" /></td> </tr> </table> <script> document.querySelector('input[type=checkbox]').addEventListener('click', function (e) { e.stopPropagation(); }) </script> |
Спасибо, н опочему-то не работает.
воткнул в http://codepen.io/anon/pen/XXjYyN вставил туда - на первой строке работает (т.е. подавляет) а на следующих нет. |
Цитата:
<table style="border: 1px solid black" width="100" height="100"> <tr onClick="javascript:alert('123');"> <td><input type="checkbox" /></td> </tr> <tr onClick="javascript:alert('123');"> <td><input type="checkbox" /></td> </tr> </table> <script> var arr = document.querySelectorAll('input[type=checkbox]'); [].forEach.call(arr, function (el) { el.addEventListener('click', function (e) { e.stopPropagation(); }) }) </script> |
Вау , спасибо!!
заработало (с) Кот Матроскин |
Часовой пояс GMT +3, время: 05:14. |