Jquery 如果存在具有类的子级,则删除父div,而不删除其他实例
我需要从DOM中删除一个div,如果它有一个具有特定类名的子div,而不删除子div 我尝试在if/then语句中使用.remove(),但当我这样做时,它仍然会删除目标父div的所有实例,甚至是没有子div的实例 父类和子类类型B将自动生成Jquery 如果存在具有类的子级,则删除父div,而不删除其他实例,jquery,html,web-frontend,Jquery,Html,Web Frontend,我需要从DOM中删除一个div,如果它有一个具有特定类名的子div,而不删除子div 我尝试在if/then语句中使用.remove(),但当我这样做时,它仍然会删除目标父div的所有实例,甚至是没有子div的实例 父类和子类类型B将自动生成 <div class="overall"> <div class="parent"> <div class="child-type-A"> // stuff that can't be
<div class="overall">
<div class="parent">
<div class="child-type-A">
// stuff that can't be deleted
</div>
</div>
<div class="parent">
<div class="child-type-B">
// more stuff
</div>
</div>
<div class="parent">
<div class="child-type-B">
// even more stuff
</div>
</div>
</div>
我希望“if”所针对的div是唯一受影响的div,有没有办法做到这一点?您需要这样做:-
$(document).ready(function(){
$( '.child-type-A' ).closest('.parent').replaceWith($( '.child-type-A' ).closest('.parent').contents());
//you can do this one also
//$( '.child-type-A' ).parent('.parent').replaceWith($( '.child-type-A' ).parent('.parent').contents());
});
工作代码段:-
$(文档).ready(函数(){
$('.child-type-A')。最近的('.parent')。替换为($('.child-type-A')。最近的('.parent').contents());
//你也可以做这个
//$('.child-type-A')。父项('.parent')。替换为($('.child-type-A')。父项('.parent').contents());
});代码>
//无法删除的内容
//更多的东西
//更多的东西
@LNML在任何情况下,在总体div中都可以出现多个子类型-A
div?您的意思是在总体中会出现多个子类型-A吗?不,只有一个。@LNML我在第二个工作示例代码段中也讨论了这个条件。
if( '.parent > .child-type-A' ) {
$( 'parent' ).remove();
}
$(document).ready(function(){
$( '.child-type-A' ).closest('.parent').replaceWith($( '.child-type-A' ).closest('.parent').contents());
//you can do this one also
//$( '.child-type-A' ).parent('.parent').replaceWith($( '.child-type-A' ).parent('.parent').contents());
});