在JavaScript中,我们可以使用removeChild()方法来删除父元素下的某个子元素。
语法:
A.removeChild(B);
说明:
A表示父元素,B表示父元素内部的某个子元素。
举例:删除最后一个子元素
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
window.onload = function ()
{
var oBtn = document.getElementById("btn");
oBtn.onclick = function ()
{
var oUl = document.getElementById("list");
//删除最后一个子元素
oUl.removeChild(oUl.lastElementChild);
}
}
</script>
</head>
<body>
<ul id="list">
<li>HTML</li>
<li>CSS</li>
<li>JavaScript</li>
<li>jQuery</li>
<li>Vue.js</li>
</ul>
<input id="btn" type="button" value="删除" />
</body>
</html>
浏览器预览效果如下图所示。
分析:
oUl.removeChild(oUl.lastElementChild);表示删除ul中最后一个li元素,其中oUl.lastElementChild表示ul中的最后一个子元素。如果想要删除第一个子元素,可以使用以下代码来实现:
oUl.removeChild(oUl.firstElementChild);
那么如果想要删除第2个子元素或者任意一个子元素,该怎么做呢?这就需要我们学到“10.4 DOM遍历”这一节才知道。
上面是删除一个子元素的情况,假如我们想要把整个列表删除,又该如何实现呢?很简单啦,直接对ul元素进行removeChild()操作就可以了,实现代码如下。
举例:删除整个列表
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title></title>
<script>
window.onload = function ()
{
var oBtn = document.getElementById("btn");
oBtn.onclick = function ()
{
var oUl = document.getElementById("list");
document.body.removeChild(oUl);
}
}
</script>
</head>
<body>
<ul id="list">
<li>HTML</li>
<li>CSS</li>
<li>JavaScript</li>
<li>jQuery</li>
<li>Vue.js</li>
</ul>
<input id="btn" type="button" value="删除" />
</body>
</html>
浏览器预览效果如下图所示。
分析:
我们点击【删除】按钮后,整个列表都被删除了。从上面几个例子,我们可以很清楚地知道:在使用removeChild()方法删除元素之前,我们必须找到2个元素。