jQuery不会删除数组元素中的一个

时间:2017-02-22 15:48:04

标签: javascript jquery

我有两个可能的html块来到我的功能,比如

<div id="results">
    <div id="result1">
        <h2 class="header">header 1</h2>
    </div>
    <div id="result2">
        <h2 class="header">header 2</h2>
    </div>
</div>

<div id="result1">
    <h2 class="header">header 1</h2>
</div>
<div id="result2">
    <h2 class="header">header 2</h2>
</div>

我需要删除一些结果#divs,具体取决于标题内容 所以,当我得到

var headers = ['header 2']; // just for example

我试图执行以下操作:

var incomingChunk = $(incomingChunkHtml);

$(headers).map(function() {
    var headerLocator = "h2.header:contains('" + this + "')";
    incomingChunk.find(headerLocator).parent().remove();
});

简单来说:对于每个标题文本,我试图找到标题元素,获取其父标题(div)并将其删除,无论该div是否具有父(根)div或不。它适用于第一个案例html 但它并不适用于最后一个。父母()&#39;电话给了我div,&#39;删除()&#39; call返回它(所以我假设它应该被删除),但是在所有的incomingChunk之后仍然有其他div。

任何想法为什么以及如何解决这个问题,所以代码适用于两种类型的html块?

0 个答案:

没有答案