За последние 24 часа нас посетили 38664 программиста и 1284 робота. Сейчас ищут 1070 программистов ...

jQuery выборка с исключением

Тема в разделе "JavaScript и AJAX", создана пользователем Freakmeister, 4 ноя 2011.

  1. Freakmeister

    Freakmeister Активный пользователь

    С нами с:
    20 дек 2009
    Сообщения:
    888
    Симпатии:
    5
    Есть таблица. Я сделал, чтобы по клику, выделялась строка. А как сделать, чтобы выделения не происходило, если я кликаю по <a> внутри <td>? Что-то с офф-сайта всё перепробовал, но тут похоже дело в руках...
    [js]$('table tr').click(function(){
    $(this).toggleClass("selected_string");
    });[/js]
     
  2. Mr. T

    Mr. T Активный пользователь

    С нами с:
    10 ноя 2010
    Сообщения:
    733
    Симпатии:
    0
    Адрес:
    Украина, г. Киев
    А если проверку сделать на наличие у предка класса selected_string?
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    я б задавал класс тем ссылкам которые должны мочь выделяться =) а не наоборот.
     
  4. Freakmeister

    Freakmeister Активный пользователь

    С нами с:
    20 дек 2009
    Сообщения:
    888
    Симпатии:
    5
    Так выделяются не ссылки, а <tr>ы. Просто когда кликаешь на ссылку, <tr> всё-равно выделяется, ибо ссылка это его дочерний элемент. Вот как это залочить я никак не вшпрехаю...
     
  5. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Еще раз. Задай класс только тем ссылкам от которых требуется подобное действие и усё. Повесь функу и выделяй все что требуется.
     
  6. Михаил

    Михаил Активный пользователь

    С нами с:
    12 июл 2009
    Сообщения:
    545
    Симпатии:
    0
    Адрес:
    Bielarus
    а дай кусок кода таблицы там где надо выделять и где не надо
     
  7. Freakmeister

    Freakmeister Активный пользователь

    С нами с:
    20 дек 2009
    Сообщения:
    888
    Симпатии:
    5
    Вот, смотрите какая лабуда. http://maestro-magnifico.ru/?view=allPlayers
    Кликаем по строкам - выделяется. Кликаем по ссылкам - тоже выделяется перед переходом на следующую страницу.
    Надо сделать чтобы по ссылкам не выделялось, но экшен прописан на клик <tr>.
     
  8. MiksIr

    MiksIr Активный пользователь

    С нами с:
    29 ноя 2006
    Сообщения:
    2.339
    Симпатии:
    44
    Хоспади, все никак не решишь? Ну может выучить побольше о событиях в жаваскрипте - как они вообще работают.
    Решение: $("TD A").bind("click", function (ev) { ev.stopPropagation(); });
    Или у себя в обработчике кликов проверять ev.target, например, if (ev.target.nodeName != 'A')
    И верни ссылкам подчеркивание.