问答详情
源自:9-14 删除节点removeChild()

为什么不是我预期的结果

<!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");
  // 在此完成该函数
  document.write("清除的节点内容:");
  for(var i=0;i<content.childNodes.length;i++){
      if(content.childNodes[i].nodeType!=1){
          continue;
      }
      else{
          var a=content.removeChild(content.childNodes[i]);
          document.write(a.innerHTNL+",");
      }
  }
}
</script>


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




</body>
</html>


提问者:小小理工男 2016-08-03 11:08

个回答

  • 水里有条鱼
    2016-08-03 14:16:35
    已采纳

    因为doucument.write会清空原来body里面的内容,所以得不到任何东西。具体可以看:
    http://www.softwhy.com/forum.php?mod=viewthread&tid=13582

    可以修改为:

      var content=document.getElementById("content");

      // 在此完成该函数

      

      for(var i=0;i<content.childNodes.length;i++){

          if(content.childNodes[i].nodeType!=1){

              continue;

          }

          else{

              var a=content.removeChild(content.childNodes[i]);

              alert(a.innerHTML);

          }

      }