为什么不能添加也不能删除呢?而且写了添加的代码,改变颜色的效果就没了!

来源:9-22 编程练习

蜗牛plus

2016-02-25 16:37

<!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 change = document.getElementsByTagName("tr"); 
		for (var i=0;i<change.length;i++){
    	    change[i].onmouseover=function(){
             this.style.backgroundColor="red" ;
    	    }
            change[i].onmouseout=function(){
                this.style.backgroundColor="#fff";
            }
		}
	 }
     
      // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
      function addTo(){
        var xh = prompt("请输入学号",);
        var xm = prompe("请输入姓名",);
        if(xh!=null&&xh!=""&&xm!=null&&xm!=""){
            var tr =document.createElement("tr")
            var td1 = document.createElement("td");
            var td2 = document.createElement("td");
            var td3 = document.createElement("td");
            td1.innerHTML=xh;
            td2.innerHTML=xm;
            td3.innerHTML="<a href="javascript:deleteROW(this);" >删除</a>";
            tr.appendChild(td1);
            tr.appendChild(td2);
            tr.appendChild(td3);
            var table = document.getElementById("table").lastChild;
               var obj=table.appendChild(tr); 
               bgcChange(obj);
        }else{
            alert("请重新输入")
        }
      }
     // 创建删除函数
          function deleteROW(obj){
       var tb=obj.parentNode.parentNode.parentNode;
         var tr=obj.parentNode.parentNode;
         tb.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:deleteROW(this);" >删除</a></td>   <!--在删除按钮上添加点击事件  -->
	   </tr>

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

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


写回答 关注

1回答

  • ConradW
    2016-02-25 20:42:47
    已采纳
    • 输入姓名对话框的函数拼写错误

    var xh = prompt("请输入学号");
    var xm = prompt("请输入姓名");
    • 所有<a>标签的函数调用方式有误,可替换为:

    <a href='javascript:;' onclick='deleteROW(this)'>
    • bgcChange(obj)方法未定义

    蜗牛plus

    非常感谢!

    2016-02-26 10:07:13

    共 1 条回复 >

JavaScript进阶篇

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

467402 学习 · 21877 问题

查看课程

相似问题