zoukankan      html  css  js  c++  java
  • [JS]动态添加删除ROW

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>增加Table行</title>
    </head>
    <script>

    var count=3;

    function CheckAll(sender)
    {
     var _array = document.getElementsByTagName("input");
     for (var i=0;i<_array.length;i++)
     {
      var e = _array[i];
      if (e.type == "checkbox")
      {
        if(e.id != "chkAll")
        {
        e.checked = sender.checked;
        }
      }
     }
    }


    function AddRow(obj)
    {
     count++;
     
     //添加一行
     var newTr = testTbl.insertRow();
     newTr.setAttribute("id","tr" + count.toString());
     //添加两列
     var newTd0 = newTr.insertCell();
     var newTd1 = newTr.insertCell();
     //设置列内容和属性
     
     newTd0.innerHTML = '<input type=checkbox id="box'+ count.toString() +'">';
     newTd1.innerText= '第'+ count.toString() +'行';
    }

    function DelRow()
    {
     var tb = document.getElementById("testTbl");
     if(tb.hasChildNodes)
     {
      var lastchild = tb.childNodes[0].childNodes[tb.childNodes[0].childNodes.length-1];
      if(lastchild)
      {
       if(confirm("确认删除" + lastchild.childNodes[1].childNodes[0].nodeValue + "?"))
       {
        var removednode = lastchild.parentNode.removeChild(lastchild);
        //alert(removednode.childNodes[1].childNodes[0].nodeValue);
        return true;
       }
       else
       {
        return false;
       }
      }
     }
    }

    function ShowCheckboxID()
    {
     var message = "";
     
     var _array = document.getElementsByTagName("input");
     for (var i=0;i<_array.length;i++)
     {
      var e = _array[i];
      if (e.type == "checkbox")
      {
       //alert(e.id);
       message += e.id + ",";
      }
     }
     
     if(message.length > 0)
     {
      message = message.substr(0,message.length-1);
     }
     alert(message);
    }

    function ShowTRID()
    {
     var tb = document.getElementById("testTbl");
     if(tb.hasChildNodes)
     {
      var message = "";
      var array_tr = tb.childNodes[0].childNodes;
      for(var i=0;i< array_tr.length;i++)
      { 
       if(i==0)
       {
        message += array_tr[i].id;
       }
       else
       {
        message += ","+array_tr[i].id;
       }
       //alert(array_tr[i].id);
      }
      
      alert(message);
     }
    }

    function SplitStr()
    {
     var str = document.getElementById("txt1").value;
     
     var _array = str.split(",");
     
     var result = "";
     for(var i=0;i<_array.length;i++)
     {
      result += _array[i] +"\r\n";
     }
     
     if(result.length > 0)
     {
      result = result.substr(0,result.length-2);
     }
     alert(result); 
    }
    </script>
    <body>

    <table id="testTbl" style="border: solid 1px #D2D2D2">
    <tr id="tr0">
    <td><input type=checkbox id="chkAll" onclick="CheckAll(this);"></td>
    <td>全选</td>
    </tr>
    <tr id="tr1">
    <td ><input type=checkbox id="box1"></td>
    <td>第1行</td>
    </tr>
    <tr id="tr2">
    <td ><input type=checkbox id="box2"></td>
    <td>第2行</td>
    </tr>
    <tr id="tr3">
    <td ><input type=checkbox id="box3"></td>
    <td>第3行</td>
    </tr>
    </table>

    <br />
    <input type="button" id="btnAdd" onclick="AddRow();" value="Add Row" />
    <input type="button" id="btnDel" onclick="DelRow();" value="Del Row" />
    <input type="button" id="btnShowCheckboxID" onclick="ShowCheckboxID();" value="Show Checkbox ID" />
    <input type="button" id="btnShowTRID" onclick="ShowTRID();" value="Show TR ID" />

    <hr size="1" />
    <input type="text" id="txt1" value="She,sells,seashells,by,the,seashore" size="50" style="cursor:pointer" />
    <input type="button" id="btnSplit" onclick="SplitStr();" value="split string" />
    </body>
    </html>

  • 相关阅读:
    测试覆盖(率)到底有什么用?
    重构遗留程序的一次案例学习(java程序)
    rsync学习
    一次awk脚本的重构
    哪本书是对程序员最有影响、每个程序员都该阅读的书?
    我的阅读编程书籍的好方法
    领域驱动设计和实践
    不要if else的编程
    编码规范的要点
    最牛B的编码套路
  • 原文地址:https://www.cnblogs.com/RobotTech/p/890419.html
Copyright © 2011-2022 走看看