为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的按钮点击后没有清除内容

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
</head>

<body>
<div id="content">
  <h1>html</h1>
  <h1>php</h1>
  <h1>javascript</h1>
  <h1>jquery</h1>
  <h1>java</h1>
</div>

<script type="text/javascript">
function clearText() {
  var content=document.getElementById("content");
  // 在此完成该函数
  for(var i=o;i<content.childNodes.length;i++){
      var x=document.removeChild(content.childNodes[i]);
  }
 
}
</script>

<button onclick="clearText()">清除节点内容</button>



</body>
</html>

正在回答

2 回答

但我这样写是哪里错了呀?

0 回复 有任何疑惑可以回复我~
#1

慕UI624645

for(var i=o;i<content.childNodes.length;i++)这句话,你写的是i=o吧?应该是i=0
2018-05-18 回复 有任何疑惑可以回复我~
#2

花椋 提问者 回复 慕UI624645

谢谢,总是会出这种白痴的错误
2018-05-21 回复 有任何疑惑可以回复我~

使用for(var i=o;i<content.childNodes.length;i++)的话,每次循环后length都在减小,可以定义在外面:

  var len = content.childNodes.length;

  for(var i=o;i<len;i++){
      var x=document.removeChild(content.childNodes[i]);
  }

0 回复 有任何疑惑可以回复我~
#1

hhahaha

每次都在减少,但前几次的效果怎么没有。比如i=0的时候。消除一行。我有点白。
2018-05-11 回复 有任何疑惑可以回复我~
#2

皇骑

for(var i=o;i<content.childNodes.length;i++)表示从头开始移除, i = 0时,content.childNodes[i]是个空白文本节点,点击按钮后没有变化,之后类推。 以下是我成功的代码,你运行然后分析一下大概就明白了: // 在此完成该函数 var len = content.childNodes.length; for (i = 0; i < len; i++) { content.removeChild(content.childNodes[0]); } }
2018-05-11 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么我的按钮点击后没有清除内容

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信