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

添加一行功能实现不了

不知道为什么添加一行没反应。

提问者:GDnite 2018-10-15 22:28

个回答

  • 风君子说
    2018-10-19 09:50:51
    已采纳

    ntr.appendChild(ntd_1);

                ntr.appendChild(ntd_2);

                ntr.appendChild(ntd_3);

                tab.appendChild(ntr);

    你的代码,这里有问题,append的是节点,是变量,不用加引号

  • 风君子说
    2018-10-19 09:52:37

    而且num++应该放在函数的结尾处

  • GDnite
    2018-10-15 22:29:22

    <!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 obj=document.getElementsByTagName("tr");

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

                bacchange(obj[i]);          

            }    

            }    

                

                

            function bacchange(odj){    

                odj.onmouseover=function (){

                    odj.style.backgroundColor="blue";

                }

                odj.onmouseout=function (){

                    odj.style.backgroundColor="pink";

                }

            }

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

         var num=3;

            function add(){

                num++;

                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="xhoo"+num;

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

                ntd_3.innerHTML="<a href='javascript:;' onclick='del()' >删除</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 move(obj){

             var delcode=obj.parentNode.parentNode;

             delcode.parentNode.removeChild(delcode);

         }

         



      </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="move(this)">删除</a></td>   <!--在删除按钮上添加点击事件  -->

      </tr>


      <tr>

    <td>xh002</td>

    <td>刘小芳</td>

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

      </tr>  


      </table>

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

     </body>

    </html>