问答详情
源自: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(){

        bgchange();}          

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

     

     function bgchange(){

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

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

           {tr[i].onmouseover=function(){

               tr[i].style.backgroundColor="#f2f2f2";

           }

            tr[i].onmouseout=function(){

               tr[i].style.backgroundColor="#fff";

             }  

           }

}

     

         

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

    var num=3; 

    function createtr(){

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

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

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

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

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

        if(num<10){

            td1="xh00"+num;

            td2="学生0"+num;

        }

        else{

            td1="xh0"+num;

            td2="学生"+num;

        }

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

        tr.appendChild(td1);

        tr.appendChild(td2);

        tr.appendChild(td3);

        tb.appendChild(tr);

        bgchange();

        num++;

    } 

   

     

     // 创建删除函数

     function del(this){

        var tr=this.parentNode.parentNode;

        tr.parentNode.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="createtr()"/>   <!--在添加按钮上添加点击事件  -->

 </body>

</html>


提问者:stay123 2015-01-29 11:04

个回答

  • 康振宁
    2015-01-29 18:42:15

    别用this当函数的参数,这样会报错的,换个参数名称就可以了