我有一些子div元素,它是动态创建的。我想删除父级的所有div 元素,除了第一个孩子。
这是我尝试过的代码
function someFunction(obj, abc) {
if ($(obj).children().hasClass("glyphicon-plus")) {
//There is some code
} else {
var classname = abc;
var mergeFolderName = classname.split(" ");
var fullClassName = "";
for (var i = 0; i < mergeFolderName.length; i++) {
if (i > 0) {
fullClassName = fullClassName + "-" + mergeFolderName[i];
} else {
fullClassName = 'parent-folder-' + mergeFolderName[i];
}
}
alert("After merge = " + fullClassName); //parent-folder-Great-Plains
if ($(obj).parent().hasClass(fullClassName)) {
var count = $("." + fullClassName).children().length;
alert("child div length = " + count); //length = 3
for (var i = 0; i < count; i++) {
alert("class NO=" + i + " Name = " + $("." + fullClassName).children('div:eq(' + i + ')').attr("class"));
if (i > 0) { //remove 2 and 3
$("." + fullClassName).children('div:eq(' + i + ')').remove();
}
}
}
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="parent-folder-Great-Plains">
<div class="MainFolder Great Plains folder-icon" onclick="someFunction(this,'Folder1')" style="padding-left: 20px;">
<span class="glyphicon glyphicon-minus"></span> Folder1
</div>
<div class="MainFolder folder-icon Accounts" onclick="someFunction(this,'Folder2')" style="padding-left:20px;">Folder2</div>
<div class="MainFolder folder-icon Purchase" onclick="someFunction(this,'Folder3')" style="padding-left:20px;">Folder3</div>
</div>
注意
用户将单击文件夹1,然后它必须删除文件夹2和文件夹3。
我的问题是当用户单击Folder1
时,它会删除folder2
,但不会folder3
更新
我不想像
abc = 'Folder1'
一样使用,因为它不会是相同的文件夹名称。我想转到Folder1
的父文件夹,然后我想删除父级的所有子分区,除了第一个分区
你可以做:
$(obj) //Select the object
.parent() //Select the parent of the object
.children() //Select all the children of the parent
.not(':first-child') //Unselect the first child
.remove(); //Remove
下面是一个片段:
function someFunction(obj, abc) {
$(obj).parent().children().not(':first-child').remove();
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="parent-folder-Great-Plains">
<div class="MainFolder Great Plains folder-icon" onclick="someFunction(this,'Folder1')" style="padding-left: 20px;">
<span class="glyphicon glyphicon-minus"></span> Folder1
</div>
<div class="MainFolder folder-icon Accounts" onclick="someFunction(this,'Folder2')" style="padding-left:20px;">Folder2</div>
<div class="MainFolder folder-icon Purchase" onclick="someFunction(this,'Folder3')" style="padding-left:20px;">Folder3</div>
</div>
文档:兄弟姐妹((