哪里出错了?为什么一点效果都没有

来源:9-22 编程练习

juanyong

2016-07-08 11:12

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

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

          c1[i].onmouseover = function(){

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

          }

          c1[i].onmouseout = function(){

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

          }

  } 

     

 

}

     

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

     function addOne(){

         var tar = document.getElementById("table").lasrChild;

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

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

         newtad.innerHTML="<input type='text'/>";

         tr.appendChild(td);

         

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

         newtad.innerHTML="<input type='text'/>";

         tr.appendChild(td);

         

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

         td.innerHTML="<a href="javascript:;" />删除";

         tr.appendChild(td);

         

         

         tar.appendChild(tr);

     }

   

     

     // 创建删除函数

     function dele(obj){

        var detr = obj.parentNode.parentNode;

        detr.parentNode.removeChild(detr);

     }



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

  </tr>


  <tr>

<td>xh002</td>

<td>刘小芳</td>

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

  </tr>  


  </table>

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

 </body>

</html>


写回答 关注

3回答

  • 红红红红红红红红红
    2016-07-08 14:39:18
    已采纳

             var tar = document.getElementById("table").lasrChild; 写错了,把后面的.lasrChild去掉,在addOne()函数的最后面添加

          tr.onmouseover = function(){

                  tr.style.backgroundColor="#f2f2f2";

              }

              tr.onmouseout = function(){

                 tr.style.backgroundColor="#fff";

              }


    juanyo...

    非常感谢!

    2016-07-08 14:45:21

    共 1 条回复 >

  • 慕粉3584201
    2016-07-08 15:14:15

    在function addone()函数里面 调用 高亮表格一行的函数

    juanyo...

    嗯嗯,有效果了

    2016-07-08 15:17:15

    共 1 条回复 >

  • 损失函数
    2016-07-08 14:32:44
    <!DOCTYPE html>
    <html>
    <head>
    <title> new document </title>
    <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
    </head>
    <body>
    <table border="1" width="50%" id="table">
    <tr onmousemove="changeStyle(this,'backgroundColor', '#f2f2f2')" onmouseout="changeStyle(this,'backgroundColor', '#fff')">
    <th>学号</th>
    <th>姓名</th>
    <th>操作</th>
    </tr>
    <tr onmousemove="changeStyle(this,'backgroundColor', '#f2f2f2')" onmouseout="changeStyle(this,'backgroundColor', '#fff')">
    <td>xh001</td>
    <td>王小明</td>
    <td><a href="javascript:;" onclick="dele(this)">删除</a></td>
    <!--在删除按钮上添加点击事件  -->
    </tr>
    <tr onmousemove="changeStyle(this,'backgroundColor', '#f2f2f2')" onmouseout="changeStyle(this,'backgroundColor', '#fff')">
    <td>xh002</td>
    <td>刘小芳</td>
    <td><a href="javascript:;" onclick="dele(this)">删除</a></td>
    <!--在删除按钮上添加点击事件  -->
    </tr>
    </table>
    <input type="button" value="添加一行" onclick="addOne()" />
    <!--在添加按钮上添加点击事件  -->
    <script type="text/javascript">
    var changeStyle = function(elem, attr, value) {
    elem.style[attr] = value; 
    };
    // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
    function addOne() {
    var tar = document.getElementById("table").lastChild;
    var tr = document.createElement("tr");
    var td1 = document.createElement("td");
    td1.innerHTML = "<input type='text'/>";
    tr.appendChild(td1);
    var td2 = document.createElement("td");
    td2.innerHTML = "<input type='text'/>";
    tr.appendChild(td2);
    var td3 = document.createElement("td");
    td3.innerHTML = "<a href=\"javascript: ;\" onclick=\"dele(this)\" />删除";
    tr.appendChild(td3);
    tar.appendChild(tr);
    }
    // 创建删除函数
    function dele(obj) {
    var detr = obj.parentNode.parentNode;
    detr.parentNode.removeChild(detr);
    }
    </script>
    </body>
    </html>

    亲测可用,望采纳!

    juanyo...

    那如果我表格再添加一行,鼠标放在上面不久没有效果了吗

    2016-07-08 14:38:18

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468060 学习 · 21891 问题

查看课程

相似问题