jQuery : if 语句,parent 名称和 children

jQuery : if statement, parent name and children

我有一个 if 语句,其中显示了每个 child。但我想显示他们的 parent too.There 是多个 parent 有 children。因此,目标应该是将 parent 显示为 <ul>,其中多个 <li> children.

for (var i in objects) {
        obj = objects[i].name;
        objID = objects[i].id;
        if (obj == "") {
            daeParent = objects[i].parent.name;
            parentDaeParent = objects[i].parent.parent.name;
            $("#objectH").append("<ul>" + parentDaeParent + "</ul>");
            $("#objectH").append("<li class='object-hierarchy-name dae-hierarchy "+objID+" ' attr-id="+objID+">" + daeParent + "</li>");
        }
}

我每次 parent + children 都能显示,但 parent 一次不能显示。

不知道我的问题是否清楚

[编辑]

objects 是一个数组,其中我用 three.js.

导入了不同的 collada objects

处理后,我会得到这个 HTML:

<h3>Parent1</h3>
<ul> 
    <li>Children1</li>
    <li>Children1</li>
</ul>
<h3>Parent2</h3>
<ul> 
    <li>Children1</li>
    <li>Children2</li>
</ul>
[...]

but not the parent once

您可以记录添加了哪些 parent,然后仅在不在记录(数组)中时才添加,或者(较慢)检查 html 如果 [=19] =]存在

您可以使用 .filter 根据文本查找项目,例如:

var parent = $('#objectH>ul').filter(function(){ 
    return $(this).text() === parentDaeParent;
});

if (!parent.length) {
     $("#objectH").append("<ul>" + parentDaeParent + "</ul>");

parent.append("<li ...")