问答详情
源自:9-22 编程练习

var num=document.getElementById("table").childNodes.length+1;不是获取的table的子标签吗?为什么怎么改它子标签的数量,结果都是2

<!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 table=document.getElementById("table");

       var trs = table.getElementsByTagName("tr"); 

          for(var i=0;i<trs.length;i++)

          {

              trs[i].onmouseover=function()

              {

                  //alert(trs.length);

                  this.style.backgroundColor="#f2f2f2";

              }

              trs[i].onmouseout=function()

              { 

                  this.style.backgroundColor=""; 

              }

          } 

     

 

}

     

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

      function createa(){

          

            var num=document.getElementById("table").childNodes.length+1;

            

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

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

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

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


            ntd_1.innerHTML="xh00"+num;

            ntd_2.innerHTML="第"+num+"位同学";

            ntd_3.innerHTML="<a href='javascript:;' onclick='del(this)' >删除</a>";


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


            tab.appendChild(ntr);

            ntr.appendChild(ntd_1);

            ntr.appendChild(ntd_2);

            ntr.appendChild(ntd_3);


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

            

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


            bacchange(obj[i]);    

        

      }

      

      }

    /*

      function delete(obj)

    {

        var tbody=document.getElementById("table").lastChild;

        var tr=obj.parentNode.parentNode;

        tbody.removeChild(tr);

    }

    */

     // 创建删除函数

     function del(obj)

     {

         var tr = obj.parentNode.parentNode;

         var tb = tr.parentNode;

         tb.removeChild(tr);

         

     } 

     

     



  </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="javascript;" onclick="del(this);">删除</a></td>   

<!--在删除按钮上添加点击事件  -->

   </tr>


   <tr>

<td>xh002</td>

<td>刘小芳</td>

<td><a href="javascript:;" onclick="del(this)" >删除</a></td>   

<!--在删除按钮上添加点击事件  -->

   </tr>  



   </table>

   <input type="button" value="添加一行" onclick ="createa()" />  

   <!--在添加按钮上添加点击事件  -->

 </body>

</html>


提问者:qq_抹茶酱_0 2018-11-14 13:24

个回答

  • Vanoss
    2018-11-29 11:08:26

    document.getElementsByTagName("table")[0];