упростить jquery родителей и детей - PullRequest
0 голосов
/ 11 августа 2010

Мне нужно получить атрибут дочернего элемента ребенка дальнего родителя href ...

Теперь я могу получить это, используя это длинное выражение

var uid = $(this).parents(':eq(7)').children( ).find('.p_cell')
.children(':eq(0)').children(':eq(0)').attr('href');

Пожалуйста, любую строку, используя '>' и ': 'Это может упростить утверждение

спасибо

Прадют

Индия

1 Ответ

1 голос
/ 11 августа 2010

Без знания HTML вы можете использовать :first-child следующим образом:

var uid = $(this).parents(':eq(7)')
                 .find('> * .p_cell > :first-child > :first-child').attr('href');

Если у этого родителя есть класс, к которому вы можете получить доступ, то вместо 8-го родителя вы можете найти его с помощью селектора, который соответствует .closest(). Например, если этот родитель был <div>, как это:

<div class="container">

Вы можете сделать это:

var uid = $(this).closest('.container')
                 .find('> .p_cell > :first-child > :first-child').attr('href');

Однако, если вы разместили HTML, это, вероятно, станет намного проще.

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