关于js课程最后一章删除表格的练习。问题在备注中,最后一个函数我迷了,求大神帮助

<!DOCTYPE html>

<html>

 <head>

  <title> new document </title>  

  <meta http-equiv="Content-Type" content="text/html; charset=gbk"/>   

  <script type="text/javascript"> 

 // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。

    window.onload = function(){

        var hang = document.getElementsByTagName("tr");

   for(var i=1; i<hang.length; i++){

       hang[i].onmouseover = function(){

           this.style.backgroundColor = "#f2f2f2";

       }

       hang[i].onmouseout = function(){

           this.style.backgroundColor = "#fff";

       }

   }

}

     

      // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;

     function tianjia(){

      var tr = document.createElement("tr");

      for(var i=0; i<3; i++){

      var td = document.createElement("td");

      td.innerHTML = "<input type = 'text'/>"

      // td.setAttribute("height","50px");

      tr.appendChild(td);

      }

      var tab = document.getElementById("table");

      tab.appendChild(tr);

     }

     // 创建删除函数

    function shanchu(obj){

   var main1 = document.getElementById("table").lastChild    ;//为什么要加上一个lastChild才可以删除?这样岂不是main1代表最后一个tr标签?但是去掉就不可以点击删除了。

   main1.removeChild(obj.parentNode.parentNode);

    }



  </script> 

 </head> 

 <body> 

  <table border="1" width="50%" id="table">

  <tr>

<th>学号</th>

<th>姓名</th>

<th>操作</th>

  </tr>  


  <tr>

<td>xh001</td>

<td>王小明</td>

<td><a href="#" onclick = "shanchu(this);">删除</a></td>   <!--在删除按钮上添加点击事件  -->

  </tr>


  <tr>

<td>xh002</td>

<td>刘小芳</td>

<td><a href="javascript:" onclick = "shanchu(this);">删除</a></td>   <!--在删除按钮上添加点击事件  -->

  </tr>  


  </table>

  <input type="button" value="添加一行" onclick="tianjia()" />   <!--在添加按钮上添加点击事件  -->

 </body>

</html>


白平衡
浏览 1481回答 1
1回答

stone310

<table>里面没写<tbody>,系统会自动帮你加上,而且</tbody>和</table>紧贴着,最后没有#text,因此table.childNode[0]是#text,table.childNode[1]是<tbody>
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript