问答详情
源自: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 acolor=document.getElementsByTagName("td");
        for(i=0;i<acolor.length;i++){
               acolor[i].onmouseover=function(){
               this.style.backgroundColor="#D8D8D8";
           }
           acolor[i].onmouseout=function(){
               this.style.backgroundColor="#fff";
           }
        }
    }   
     // 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。
       
        var num=3;
    function add(){
        var adda=document.getElementById("table");
        
        var newadda=document.createElement("tr");
        var newaddb=document.createElement("td");
        var newaddc=document.createElement("td");
        var newaddd=document.createElement("td");
        
        newaddc.innerHTML=prompt("姓名:");
        newaddb.innerHTML=num;
        newaddd.innerHTML="<a href='javascript:;' onclick=''>删除</a>";
        if(newaddc!=""&&newaddc!=null){
        adda.appendChild(newadda);
        newadda.appendChild(newaddb);
        newadda.appendChild(newaddc);
        newadda.appendChild(newaddd);
        }
        else{
            alert("请输入正确内容");
        }
        num++;
    }
      // 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
     
                
        
     // 创建删除函数
     


  </script> 
 </head> 
 <body> 
       <table border="1" width="50%" id="table">
       <tr>
        <th>学号</th>
        <th>姓名</th>
        <th>操作</th>
       </tr>  

       <tr>
        <td>1</td>
        <td>王小明</td>
        <td><a href="javascript:;" onclick="removea" >删除</a></td>   <!--在删除按钮上添加点击事件  -->
       </tr>

       <tr>
        <td>2</td>
        <td>刘小芳</td>
        <td><a href="javascript:;" onclick="removea" >删除</a></td>   <!--在删除按钮上添加点击事件  -->
       </tr>  

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


提问者:wqzero 2016-06-13 11:26

个回答

  • 高先森_2
    2016-06-13 15:10:33
    已采纳

    确实是需要添加.innerHTML     num自动加一是因为你num++的位置问题   放在上一个if里面就好了

  • 范克森
    2016-06-13 15:05:56

    if(newaddc!=""&&newaddc!=null)这句代码有问题。

    是不是应该写成

    if(newaddc.innerHTML!="" && newaddc.innerHTML!=null)

    另外,即便判断输入姓名为空,提示输入有误后,序号变量num依旧会自动+1.可以改进下。