Как скрыть все строки таблицы с одним и тем же идентификатором, используя jQuery или Javascript? - PullRequest
0 голосов
/ 17 июня 2011

У меня есть таблица со строками, которые имеют пользовательский атрибут друг с другом. Я хочу скрыть все строки таблицы, за исключением родительской строки, используя jQuery (или Javascript). Как я могу сделать это?

<table>
<tr group="1">Parent</tr>
<tr group="1">Child</tr>
<tr group="1">Child</tr>
<tr group="1">Child</tr>
</table>

Edit: Wow большая опечатка с моей стороны, мне очень жаль, я имел в виду пользовательский атрибут. Обновленный! * * 1004

Ответы [ 4 ]

2 голосов
/ 17 июня 2011

они не могут иметь одинаковый идентификатор, идентификатор тега должен быть уникальным

Вы можете просто использовать: $("table tr:gt(0)").hide()
(это работает только если у вас нет вложенных таблиц)

1 голос
/ 17 июня 2011

В вашем новом примере это возможно с помощью селектора jQuery atribute equals ( здесь ).Взгляните на эту вкусную скрипку .

. В основном, в вашем селекторе вам нужно:

$("table tr[group='2']").hide()

Конечно, этонастраиваемый.Важным битом является tr[group='2']

РЕДАКТИРОВАТЬ

Это обновленная скрипта должна работать.Если кто-то может опубликовать лучший способ, пожалуйста, сделайте.

Это добавляет к строке выше с этим:

$("table tr[group='2']").filter(":not(:first)").hide();

0 голосов
/ 17 июня 2011

Вы не можете использовать один и тот же идентификатор дважды для двух элементов HTML.Кроме того, вы не можете начать идентификатор с номера.

Если вы можете изменить свою HTML-разметку, чтобы использовать классы, которые будут выглядеть следующим образом:

<table>
    <tr class="one">Parent</tr>
    <tr class="one">Child</tr>
    <tr class="one">Child</tr>
    <tr class="one">Child</tr>
</table>

Тогда вы бы сделали это так:

$('.one').hide();
0 голосов
/ 17 июня 2011

Вы не должны использовать идентификаторы, используйте только классы, когда элемент повторяется на странице, поскольку идентификатор относится к уникальному, который можно использовать только один раз на страницу.Замените атрибут id на class, и тогда вы сможете использовать этот код:

$('table tr[group=1]').hide();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...