Подтвердить что ты не робот

JQuery - Получение родителя второго уровня элемента

Я пытаюсь получить родительский элемент родительского элемента <a> (grandparent?). Я хочу найти этого дедушку, а затем найти тег <b> в этом элементе, а затем сохранить этот текст в качестве переменной для публикации в другом месте на странице. Я пытался использовать функцию parent(), но без успеха.

Вот код, который я пробовал:

    $('.mixPlayCell a').click( function() {
        var title = $(this).parent().get(0).parent().get(0).text();
        alert(title);
    });
4b9b3361

Ответ 1

попробовать:

$(this).parent().parent().find('.thingtofind').text();

Ответ 2

Для выбора второго родительского

parents(':eq(1)')

выглядит более плавным, чем

parent().parent()

Кроме того, вы можете обнаружить, что

closest('ul')

лучше подходит для работы.

Ответ 3

parent() возвращает список, поэтому это работает:

$(this).parents()[1];

Ответ 4

$('.mixPlayCell a').click(function() {
  elem = $(this).parent().parent();
  title = $("tag selector goes here",elem).html();
});

Что-то вроде этого?

Ответ 5

Есть только один родитель, нет необходимости .get(0)

    var title = $(this).parent().parent().find("whateveryouwant").html();

Ответ 6

$(this).parent().parent().find('mytag').text()

Должно работать нормально.

Вы можете использовать любой селектор в методе find. Если вам просто нужно искать в прямых дочерних элемента элемента grandparent, вы также можете использовать $.children вместо find, который ищет во всех дочерних элементах.

Ответ 7

Попробуйте это для простой реализации:

$('.mixPlayCell a').click( function() {
    var title = $(this).parents().text();
    alert(title);
});

Только что измененный .parent() с одним .parents()

это работает для каждой версии jQuery.