remove()
将匹配元素集合从DOM中删除。同时移除元素上的事件及 jQuery 数据。
.remove ([selector])
selector类型: String。一个选择器表达式用来过滤将被移除的匹配元素集合。
和.empty()
相似。.remove()
将元素移出DOM。当我们想将元素自身移除时我们用.remove()
,同时也会移除元素内部的一切,包括绑定的事件及与该元素相关的jQuery数据。要删除的元素不删除数据和事件的情况下,使用.detach()
来代替。
请看下面的HTML:
<div class="container"> <div class="hello">Hello</div> <div class="goodbye">Goodbye</div> </div>
可以移除任何想要移除的元素:
$('.hello').remove();
结果如下:
<div class="container"> <div class="goodbye">Goodbye</div> </div>
如果<div class="hello">
元素里面有子元素,他们同样会被移除。还有元素上的事件及 jQuery 数据也会被删除。
我们也可以添加一个可选的选择器参数来过滤匹配的元素。例如,前面的代码可以重写为:
$('div').remove('.hello');
结果将一样:
<div class="container"> <div class="goodbye">Goodbye</div> </div>
例子
将所有段落从DOM删除:
<!DOCTYPE html> <html> <head> <style>p { background:yellow; margin:6px 0; }</style> <script src="https://www.lanmper.cn/static/js/jquery-3.5.0.js"></script> </head> <body> <p>Hello</p> how are <p>you?</p> <button>Call remove() on paragraphs</button> <script> $("button").click(function () { $("p").remove(); }); </script> </body> </html>