Ячейка таблицы - ссылка. Внутри этой ячейки другие ссылки.
Например есть такая таблица.
<table> <tr> <td class="m-action"> <input type="checkbox" name="name_checkbox" value=""/> <a id="id_link" href="page1.php">ссылка</a> </td> </tr> </table> Если использовать следующие действия, то при клике по ссылкам или чекбоксам внутри этой ячейки осуществляется переход на страницу page2.php. $(".m-action").attr("style", "cursor:pointer;").click(function() { window.location.href='page2.php'; }); А как сделать чтобы переход на страницу page2.php осуществлялся только при клике на свободном месте ячейки? |
т.е. клик просто на ячейку td в любое место кроме checkbox-a и <a>?
пиши примерно так. Этот пример работает для клика по всему документу, сам поправишь что нужно. $(document).on('click', function(event) { if($(event.target).closest(".inp,.hrefer").length) return; } тут обработчик ставится на весь документ, в функцию передается событие - event. Если в родителях $(event.target). есть элементы с классами .inp,.hrefer, то функция обрубается. Если же таких родителей нет, то идет выполнение дальше и после return-а дописывай что нужно - переход по ссылке и прочее |
ой не помню closest Работает с двумя селекторами или нет, ну если че, сделаешь 2 условия :))
|
Спасибо, разобрался. Очень помогли. Да, closest работает с двумя селекторами.
$(".m-action").on("click", function(event) { if($(event.target).closest("input, a").length) return; window.location.href='page2.php'; }); |
Часовой пояс GMT +3, время: 04:31. |