добавить родителя в селектор jquery - PullRequest
1 голос
/ 15 февраля 2011
<tr step="step2" optional="true"><td>Gender</td></tr>
<tr step="step2" optional="true">
     <td>
         <asp:RadioButtonList ID="rblGender" runat="server" RepeatDirection="Horizontal">
             <asp:ListItem Text="Female" Value="0"></asp:ListItem>
             <asp:ListItem Text="Male" Value="1"></asp:ListItem>
         </asp:RadioButtonList>
     </td>
</tr>

Оба tr изначально скрыты, и когда условие выполнено, я хочу показать список переключателей и заголовок, для которого я должен показать оба tr

.rblGender.Как выбрать все остальные элементы?

$("#rblGender").parent().parent().prev() выбирает только первый тр.Нужно ли добавлять каждый элемент один за другим?Или есть способ добавить всю цепочку сразу?

Ответы [ 2 ]

6 голосов
/ 15 февраля 2011

Я не совсем понял, что вы имеете в виду под заголовками, но я предполагаю, что вы хотите показать обе строки. Вы можете использовать .andSelf:

Добавить предыдущий набор элементов в стеке к текущему набору.

$("#rblGender").closest('tr').prev().andSelf()

Вы также должны использовать closest() вместо parent() цепочки. Это делает его более устойчивым к структурным изменениям (и более читабельным imho).

1 голос
/ 15 февраля 2011

Как насчет обертывания элементов tr в элементе tbody, и тогда вам нужно только перейти (и скрыть / показать) к одному элементу?

Это было бы более гибко, поскольку позволяло бы одновременно скрывать / показывать столько строк, сколько вы хотите.

Затем вам, конечно, нужно будет добавить некоторые элементы tbody в другие строки таблицы, но это не сделает разметку неверной в любом случае.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...