当我只有1个父项时,使用parentNode.removeChild使用Javascript删除父元素?

时间:2018-03-15 10:55:02

标签: javascript removechild parent-node

我正在处理一个项目,我必须在某个条件下删除en元素(if)。我的代码生成<li>,其中数据通过数组插入。如果满足某些条件,我需要删除<li>

由于removeParent()不存在,我发现有不同的方法可以使用

e.parentNode.parentNode.removeChild(e.parentNode);

敲响铃声,当然在某些情况下有效。

BUT

在我的情况下,这是在<li>内的数组中动态呈现的元素,并且没有父项的父项,因此我收到错误。 我的脚本在<li>中查找元素,在我的测试中,我使用了类的<div>

$(node).find('.results-name')[0].parentNode.remove();

不幸的是不行,所以我正在寻找其他想法......

有任何线索吗? 非常感谢!

1 个答案:

答案 0 :(得分:0)

问题是代码很大,我无法复制/粘贴所有内容。

这里有更多信息: - 在页面中,我有一个模板,javascript使用该模板填充包含所有内容的div。我有~20个结果。 模板开头如下:

<script id="itemtemplate" type="geowacht/template">
    <div class="results-name">
        <h4 class="show-more-name itemaponaam" data-target="#result"></h4>
            <div class="d-block" id="result">
            <div class="itemaddress"></div>
            <div class="itemgeodesc"></div>
            <div class="itemphone"></div>
  • 页面调用查询API的脚本并返回20个结果。解析这些结果并使用模板将其添加到页面中。 这是代码的开头:

apiconfig.default_populateItemNode = function(node, apotheekData, wachtPeriodeData, authenticationData) { $(node).find('.itemaponaam')[0].setAttribute('data-target', '#result-' + itemPos); $(node).find('.buttons')[0].setAttribute('id', 'result-' + itemPos + '-buttons'); $(node).find('.buttons')[0].setAttribute('data-apbnb', apotheekData.pharmacy.id);