我有两个可能的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块?