Jquery найти родителя по классу

Материал из JQuery

Возвращает родительские элементы всех выбранных элементов. При необходимости, можно указать селектор selector для фильтрации результата.

$("#block").parent() вернет родителя элемента с идентификатором block.
$("div").parent() вернет родительские элементы всех div-ов.
$("div").parent(".lBlock") вернет элементы класса lBlock, которые являются родительскими для div-элементов на странице.

В действии

Найдем бомбы в коробках (элементы класса bomb, лежащие непосредственно внутри элементов класса box):

Замечание: в данном примере, div-элемент под номером 2 не был выделен, поскольку между элементами классов box и bomb есть промежуточный элемент с классом paper. Поэтому, элемент box не является непосредственным родителем элемента bomb.

если я пишу функцию в jQuery, чтобы ответить на class d и я хочу найти идентификатор для своего родителя, class a , как бы я сделать это? Я не могу просто сделать $(‘.a’).attr(‘id’); потому что есть несколько класс a ы. Я мог бы найти его родителей Родительский идентификатор родителя, но это кажется плохим дизайном, медленным и не очень полиморфным (мне пришлось бы написать другой код для поиска идентификатора для класса c ).

4 ответа:

предполагая, что this и .d можно писать

The closest метод возвращает самый внутренний родитель элемента, который соответствует селектору.

передать селектор в jQuery родителям:

EDIT Хм, на самом деле ответ Slaks превосходит, если вы хотите только ближайший предок, который соответствует вашему селектору.

можно использовать parents () чтобы получить все родители с данным селектором.

описание: получить предков каждого элемент в текущем наборе совпадений элементов, дополнительно фильтруется с помощью селектор.

но parent () получит только первый родитель элемента.

описание: получить родителя каждого элемент в текущем наборе совпадений элементов, дополнительно фильтруется с помощью селектор.

и .parentsUntil () что, я думаю, будет лучшим.

описание: получить предков каждого элемент в текущем наборе совпадений элементы, вплоть до, но не включая элемент соответствует селектору.

Основная задача блога — стать стартовой платформой для начинающих разработчиков, здесь не только буду писать свои статьи, но также буду выкладывать полезные ссылки которые помогут разобраться в разных вопросах. Будут затронуты темы: Ruby on Rails, PHP, MySQl, CodeIgniter, JQuery.