为什么这个啥功能都不行 我感觉代码没什么明显的问题:(

来源:9-22 编程练习

慕设计8387664

2019-07-27 15:20

<!DOCTYPE html>

<html>

 <head>

  <meta charset="utf-8">

  <title> new document </title>  

  <script type="text/javascript"> 

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

    window.onload = function()

    {

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

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

            colorc(tr[i]);

          }

    }  

    function colorc(obj)

    {

    obj.onmouseover=function()

    {

    obj.style.backgroundColor="pink";

    }

    obj.onmouseout=function()

    {

    obj.style.backgroundColor="#fff";

    }

    }               

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

    var times=1;

    function addChild()

    {

    var a=document.getElementsByTagName("table");

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

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

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

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

    c1.innerHTML="love you";

    c2.innerHTML="の第"+times+"次哦";

    c3.innerHTML="<a href="javascript:;" onclick="deChild(this)" >删除此行</a>";

    times=times+1;

    b.appendChild(c1);

    b.appendChild(c2);

    b.appendChild(c3);

    a.appendChild(b);

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

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

        {

        colorc(tr[j]);

        }

    }

    // 创建删除函数

    function deChild(obj)

    {

    var tr=obj.parentNode.parentNode;

        tr.parentNode.removeChild(tr); 

    alert("oh! 你删除了我的爱qwq");

    }

  </script> 

 </head> 

 <body> 

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

   <table border="2" width="40%" id="table">

   <tr>

<th>学号</th>

<th>姓名</th>

<th>操作</th>

   </tr>  


   <tr>

<td>xh001</td>

<td>王小明</td>

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

   </tr>


   <tr>

<td>xh002</td>

<td>刘小芳</td>

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

   </tr>  


   </table>

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

 </body>

</html>


写回答 关注

1回答

  • 狮砸sz
    2019-07-29 15:02:54

    c3.innerHTML="<a href="javascript:;" onclick="deChild(this)" >删除此行</a>";这个地方引号嵌套了,内部的要用和外部不一样的引号,例如:

    c3.innerHTML="<a href='javascript:;' onclick='deChild(this)' >删除此行</a>";

    var a = document.getElementsByTagName("table");这个返回的是一个数组,改成getElementById返回的才是一个对象:

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

    讲的可能不是很清楚,我也是现学现卖。

    慕函数257...

    正解,我也是遇到了这个问题,搞了好久终于自己弄明白了

    2019-08-12 17:48:37

    共 1 条回复 >

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题