Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 19.02.2016, 11:30
Аспирант
Отправить личное сообщение для kot_k_k Посмотреть профиль Найти все сообщения от kot_k_k
 
Регистрация: 31.10.2014
Сообщений: 37

Отменить событие для ячейки таблицы
Добрый день.
на строку повесил событие
<tr
onClick="javascript:CallPrint({$key});"
>

работет - уря.

но есть ячейка с чекбоксом, при нажатии на котором так же срабатывает событие.

Вопрос - как отменить событие на конкретной ячейке?
что-то
<td onClick=""> - но оно не работает

если нельзя - то как получить номер колонки в которой произошло нажатие мышки?
чтобы поставить заглушку в самой функции.
Ответить с цитированием
  #2 (permalink)  
Старый 19.02.2016, 11:42
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

<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>
Ответить с цитированием
  #3 (permalink)  
Старый 19.02.2016, 12:06
Аспирант
Отправить личное сообщение для kot_k_k Посмотреть профиль Найти все сообщения от kot_k_k
 
Регистрация: 31.10.2014
Сообщений: 37

Спасибо, н опочему-то не работает.

воткнул в http://codepen.io/anon/pen/XXjYyN
вставил туда - на первой строке работает (т.е. подавляет) а на следующих нет.
Ответить с цитированием
  #4 (permalink)  
Старый 19.02.2016, 12:18
Аватар для destus
Профессор
Отправить личное сообщение для destus Посмотреть профиль Найти все сообщения от destus
 
Регистрация: 18.05.2011
Сообщений: 1,207

Сообщение от kot_k_k Посмотреть сообщение
на первой строке работает (т.е. подавляет) а на следующих нет.
Ну если несколько строк, значит для каждой надо событие обрабатывать

<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>
Ответить с цитированием
  #5 (permalink)  
Старый 19.02.2016, 12:46
Аспирант
Отправить личное сообщение для kot_k_k Посмотреть профиль Найти все сообщения от kot_k_k
 
Регистрация: 31.10.2014
Сообщений: 37

Вау , спасибо!!

заработало (с) Кот Матроскин
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
событие click() для области mshdn Events/DOM/Window 5 25.04.2014 14:04
Ячейки Таблицы Slawaq Элементы интерфейса 20 22.05.2010 12:49
onmouseover отрабатывает по разному для одинаковых ячеек таблицы ilshat Events/DOM/Window 2 11.02.2009 11:25
Привязка картинки к углу ячейки таблицы! Помогите с кодом! Alexofer Общие вопросы Javascript 6 30.12.2008 23:14
Размер ячейки использовать для определения размера рисунка art_em Общие вопросы Javascript 2 20.11.2008 10:27