Найти класс внутри класса с помощью селекторов jQuery - PullRequest
4 голосов
/ 08 июля 2010

Я пытаюсь сделать что-то вроде следующего в jQuery

$('.container').siblings('.outerClass > .innerClass')

где я ищу:

<div class="container"></div>

<div class="outerClass">
    <div class="innerClass">
        find me!
    </div>
</div>

Я не могу понять синтаксис правильно.

Ответы [ 4 ]

9 голосов
/ 08 июля 2010

И еще один (но это должно работать) ( при условии, что вы хотите получить элемент с классом innerClass):

$('.container').siblings('.outerClass').children('.innerClass')
0 голосов
/ 08 июля 2010

Вы также можете сделать это для непосредственного выбора необходимых элементов

$(".outerClass").children(".innerClass").click(function() {
//Do your stuff
});
0 голосов
/ 08 июля 2010
$('.container').siblings('.outerClass:has(> .innerClass)')

Чтобы объяснить, почему;.outerClass > .innerClass - это селектор, который выбирает элемент с классом innerClass, а не externalClass.Чтобы выбрать элемент, в котором есть что-то конкретное, вы используете селектор :has, который принимает селектор в качестве аргумента.

0 голосов
/ 08 июля 2010

Есть ли проблема при пропуске селектора контейнера и использовании

$('.outerClass > .innerClass')

или, возможно, (если вы не хотите, чтобы внутренний div был прямым дочерним)

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