问答详情
源自:9-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 a =document.getElementsByTagName("tr");

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

   a[i].onmouseover=function(){

       this.style.backgroundColor="#0f0";}

   a[i].onmouseout=function(){

       this.style.backgroundColor="#fff";

   }

}

      

}

     

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

     function j(){

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

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

         if(document.getElementsByTagName("tr").length<10){

             b1.innerHTML="xh00"+document.getElementsByTagName("tr").length;}

             else if(document.getElementsByTagName("tr").length<100){

                 b1.innerHTML="xh0"+document.getElementsByTagName("tr").length;}

                 else{

                    b1.innerHTML="xh"+document.getElementsByTagName("tr").length;}

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


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

         var b31=document.createElement("a");

         b31.href="javascript:s(this);";

         b31.innerHTML="删除";

         b3.appendChild(b31);

         a.appendChild(b1);

         a.appendChild(b2); 

         a.appendChild(b3);

         document.getElementById("table").appendChild(a);

     } 

   

     

     // 创建删除函数

     function s(x){


         var a=x.parentNode.parentNode; 

         a.parentNode.removeChild(a);

         

     }



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

  </tr>


  <tr>

<td>xh002</td>

<td>刘小芳</td>

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

  </tr>  


  </table>

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

 </body>

</html>


提问者:慕婉清8197094 2018-06-19 15:39

个回答

  • 慕仔3265544
    2018-06-19 17:15:22

    用onclick 执行方法获取的this才是a标记的dom节点吧。