Скрытие строки таблицы в соответствии со значением - PullRequest
0 голосов
/ 10 июня 2009

Я не могу найти правильное выражение для выбора строк таблицы, которые должны быть скрыты в соответствии со значением ячейки, на которой щелкнул пользователь. У меня есть несколько строк, похожих на это:

<tr id='row2'>
<td class='col1'>val 1</td>
<td class='col2'>Val 2</td>
<td class='col3'>val 3</td>
<td class='col4'>Val 4</td>
<td class='col5'>Val 5</td>
<td class='col6'>Val 6</td>
<td class='col7'>Val 7</td></tr>

и разные строки могут иметь одинаковое значение в одном и том же столбце. Когда пользователь нажимает на ячейку, я хочу скрыть () все ячейки, значение которых отличается от выбранного.

Я связал событие click и в подпрограмме уже получил идентификатор класса столбца (скажем, «col 4») и значение ячейки (скажем, «val 4»). Я ожидаю, что что-то вроде:

$('tr').not(...some expression...).contains('val 4').hide()

спасет день, но у меня будут проблемы с определением правильного выражения.

есть подсказки?

Спасибо

Ответы [ 2 ]

0 голосов
/ 10 июня 2009

Ваш вопрос немного сбивает с толку. Я занимаюсь этим с мыслью, что событие click привязано к отдельным ячейкам [td].

// "this" - это ячейка (td), потому что она находится в связанном событии.

$ (this) .is (': contains ("Val 4")')? $ (this) .parent (). hide (): return;

0 голосов
/ 10 июня 2009

Попробуйте это:

$("td").click(function() {
    column = 1 + $(this).prevAll().size(); // gets column number
    text = $(this).html();
    $("td.col" + column).not(":contains('"+text+"')").parent().hide();
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...