Javascript.RU

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

Ячейка таблицы - ссылка. Внутри этой ячейки другие ссылки.
Например есть такая таблица.
<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 осуществлялся только при клике на свободном месте ячейки?
Ответить с цитированием
  #2 (permalink)  
Старый 19.04.2012, 12:20
Кандидат Javascript-наук
Отправить личное сообщение для vuler Посмотреть профиль Найти все сообщения от vuler
 
Регистрация: 16.02.2012
Сообщений: 109

т.е. клик просто на ячейку td в любое место кроме checkbox-a и <a>?
пиши примерно так. Этот пример работает для клика по всему документу, сам поправишь что нужно.
$(document).on('click', function(event)
{
	if($(event.target).closest(".inp,.hrefer").length)
	return;
}

тут обработчик ставится на весь документ, в функцию передается событие - event. Если в родителях $(event.target). есть элементы с классами .inp,.hrefer, то функция обрубается. Если же таких родителей нет, то идет выполнение дальше и после return-а дописывай что нужно - переход по ссылке и прочее
Ответить с цитированием
  #3 (permalink)  
Старый 19.04.2012, 12:21
Кандидат Javascript-наук
Отправить личное сообщение для vuler Посмотреть профиль Найти все сообщения от vuler
 
Регистрация: 16.02.2012
Сообщений: 109

ой не помню closest Работает с двумя селекторами или нет, ну если че, сделаешь 2 условия )
Ответить с цитированием
  #4 (permalink)  
Старый 19.04.2012, 16:19
Интересующийся
Отправить личное сообщение для Alexd Посмотреть профиль Найти все сообщения от Alexd
 
Регистрация: 05.05.2011
Сообщений: 15

Спасибо, разобрался. Очень помогли. Да, closest работает с двумя селекторами.
$(".m-action").on("click", function(event)	{
  if($(event.target).closest("input, a").length) return;
  window.location.href='page2.php';
});

Последний раз редактировалось Alexd, 19.04.2012 в 16:53.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
OnClick ячейки таблицы и ссылки в этой ячейке MasDen Javascript под браузер 2 30.06.2011 10:34
Как получить содержимое ячейки таблицы Enxiro jQuery 5 29.05.2011 16:36
Подскажите по CSS меню Александр_1988 Элементы интерфейса 1 17.05.2010 11:58
позиция рисунка внутри ячейки таблицы. arlek1n Общие вопросы Javascript 11 22.12.2008 10:21
Фиксированный заголовок таблицы ilshat Элементы интерфейса 6 20.12.2008 00:35