我遇到了一个奇怪的事件,我必须调用remove()两次才能删除一个元素。下面我粘贴了我的javascript控制台,你可以看到我需要调用remove两次才能删除该元素。
$("#products-view-17")
[
<div class="product-tile" id="products-view-17">…</div>
]
$("#products-view-17").remove()
[
<div class="product-tile" id="products-view-17">
<a href="http://www.shopify.com" target="_blank">…</a>
<div id="associate_form" class="remove_button">…</div>
</div>
]
$("#products-view-17")
[
<div class="product-tile" id="products-view-17">
<a href="http://www.shopify.com" target="_blank">…</a>
<div id="associate_form" class="remove_button">…</div>
</div>
]
$("#products-view-17").remove()
[
<div class="product-tile" id="products-view-17">
<a href="http://www.shopify.com" target="_blank">…</a>
<div id="associate_form" class="remove_button">…</div>
</div>
]
$("#products-view-17")
[]
我页面上的其他元素没有问题,一个Remove()调用就可以了。只有那里动态生成的那些是有问题的。这曾经工作得很好,有可能破坏它吗?
答案 0 :(得分:2)
由于您提到的库存在问题。请检查以下解决方法以删除具有相同ID的多个元素
$('[id^="products-view-17"]').remove();
答案 1 :(得分:0)
实际上有两个完全相同ID的元素。虽然页面上只有一个副本,但这是罪魁祸首:https://github.com/okendoken/bootstrap-tabcollapse