2012-06-23 4 views
0

OK, я знаю, как добавить класс, а также определить класс div в jQuery, но теперь я хочу получить имя класса дочернего элемента в родительском div, а затем добавить класс или id в родительский div, содержащий дочерний div.определить класс дочернего div внутри родительского div, а затем добавить класс или id в родительский div

пример:

<div> 
    <div class="childdiv">this is the child divident</div> 
</div> 

после того, как класс ДИВ ребенок был получить или обнаружен затем добавить класс или идентификатор родительского DIV (в моем случае, я использую class) ..

вывод должен быть:

<div class='parentclasshasbeenadded'> 
    <div class="childdiv">this is the childdiv</div> 
</div> 

Это просто эксперимент, когда Тхи Успешно, тогда я собираюсь применить это к моему фактическому проекту большого взрыва, пожалуйста, помогите мне, спасибо заранее.

PS: Я открыт для любых предложений, рекомендаций и идей.

ответ

0

это может помочь понять вещи.

$('.parent .child')[0]{ 
//there is 
} 
+1

спасибо! работать как шарм –

0
$('.childdiv').parent().addClass('parentclasshasbeenadded'); 

Выше добавит class=parentclasshasbeenadded к parent из .childdiv

и добавить id:

$('.childdiv').parent().attr('id', 'someid'); 

Для определения класса существует вам нужно использовать hasClass()

$('div').children().each(function() { 
    if($(this).hasClass('childdiv')) { 

    // to add class 
    $(this).parent().addClass('parentclasshasbeenadded'); 

    // to add id 
    $(this).parent().attr('id', 'someid'); 
    } 

}); 
0
if($(this).children().hasClass("childdiv")) { 
    $(this).addClass("Thaparentclasshasbeenadded") 
} 
+0

отредактировал ответ, чтобы добавить правильный отступ и фигурные скобки. – Spudley

2

Вы также могли бы сделать

$('div :has(".childdiv")').addClass('parentclasshasbeenadded'); 
Смежные вопросы