jQuery Remove 元素和属性
在本教程中,您将学习如何使用 jQuery 从文档中删除 HTML 元素或其内容及其属性。
jQuery 删除元素或内容
jQuery 提供了一些方法,例如 empty()
, remove()
, unwrap()
等来从文档中删除现有的 HTML 元素或内容。
jQuery empty()
方法
jQuery empty()
方法从 DOM 中删除所有子元素以及其他后代元素和选定元素中的文本内容。
以下示例将在单击按钮时删除具有类 .container
的元素内的所有内容。
<script>
$(document).ready(function(){
// Empty 空容器元素
$("button").click(function(){
$(".container").empty();
});
});
</script>
注意: 根据 W3C(万维网联盟)DOM 规范,元素中的任何文本字符串都被视为该元素的子节点。
jQuery remove()
方法
jQuery remove()
方法从 DOM 中删除选定的元素以及其中的所有内容。 除了元素本身,所有与元素关联的绑定事件和 jQuery 数据都将被删除。
以下示例将在单击按钮时从 DOM 中删除所有具有类 .hint
的 <p>
元素。 这些段落中的嵌套元素也将被删除。
<script>
$(document).ready(function(){
// 从 DOM 中删除带有"hint"类的段落
$("button").click(function(){
$("p.hint").remove();
});
});
</script>
jQuery remove()
方法还可以包含一个选择器作为可选参数,它允许您过滤要删除的元素。 例如,上一个示例的 jQuery DOM 删除代码可以重写如下:
<script>
$(document).ready(function(){
// 从 DOM 中删除带有"hint"类的段落
$("button").click(function(){
$("p").remove(".hint");
});
});
</script>
注意: 您还可以在 jQuery remove()
方法中包含选择器表达式作为参数,就像 remove(".hint, .demo")
过滤多个元素一样。
jQuery unwrap()
方法
jQuery unwrap()
方法从 DOM 中移除所选元素的父元素。 这通常与 wrap()
方法相反。
以下示例将在单击按钮时删除 <p>
元素的父元素。
<script>
$(document).ready(function(){
// 移除段落的父元素
$("button").click(function(){
$("p").unwrap();
});
});
</script>
jQuery removeAttr()
方法
jQuery removeAttr()
方法从选定元素中删除 属性。
下面的示例将在单击按钮时从 <a>
元素中删除 href
属性。
<script>
$(document).ready(function(){
// 删除超链接href属性
$("button").click(function(){
$("a").removeAttr("href");
});
});
</script>