JQuery начинающий:: имеет только для прямых потомков - PullRequest
1 голос
/ 15 января 2009

Предполагая древовидную структуру, подобную следующей: (Гадкий старый дизайн, извините)

<tr>                          (1) dont want to select this one  
   <td>
       <table>
           <tr>               (2) not a "special" td, dont select       
               <td.normal>        
           <tr>                (3) this is what I want to select
               <td.special>       
           <tr>
               <td.normal>

Я хочу выбрать tr, имеющий td с классом special в качестве прямого потомка, т. е. только (2), но не (3) [его тд не является особенным], а также не (1) [особый тд не является прямым потомком, но "внуком"]

Я пытался

$("tr:has(td.special)");

но это дает мне (1) и (2), потому что: имеет средства "имеет где-то среди всех моих потомков".

Мне нужно что-то вроде: имеет, но означает «имеет среди моих прямых детей».

В качестве альтернативы, способ переместить вверх, например, «выбрать только родительский элемент для текущего выбранного элемента».

Извините за простой вопрос, но я не могу найти его нигде в документации API.

1 Ответ

5 голосов
/ 15 января 2009

Вы пробовали $("td.ptextno:contains('Betreuung')").parent()?

РЕДАКТИРОВАТЬ: похоже, пример вопроса изменился ... попробуйте $("td.special").parent()
РЕДАКТИРОВАТЬ 2: Просто чтобы вы знали, документы по обходу здесь: http://docs.jquery.com/Traversing

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