dom添加表格

 

dom访问方法

 

  1、document.getElementById();获取单个对象

  2、document.getElementsByName();根据网页元素的name获取对

象获取的是节点列表(对象数组)

  3、document.getElementsByTagName();根据网页标签的名称获取

对象节点列表(对象数组)

 

  除了上述基本的访问方式,还有一些辅助

  node.firstChild 获取node第一个子节点对象

  node.lastChild  获取node的最后一个子节点

  node.parentNode 获取node的父节点对象

  node.childNodes 获取node的所有的子节点,返回节点列表(对象

数组)

  node.hasChildNodes() 判断是否有子节点,如果有的话返回true

否则返回false

  node.tagName 获取node的元素名称

               如果不是元素的话,不能使用tagName

 

  previousSibling上一个节点

  nestSibling下一个节点

 

  nodeName节点名称

nodeValue

 

 

实例:使用dom实现9*9的乘法表

 

思路:

1、创建一个表格table(9*9)

 

2、创建表格所需要的行数tr

     使用循环的方式创建

3、创建表格所需的列td  

     使用循环的方式创建

4、创建文本内容text

     使用循环的方式创建

5、依次追加 文本 >>td>>tr>>table>>div

 

<style type="text/css">

  div{

    background:#F99;

    width:500px;

    height:300px;

     }

    

  table{

    

    border:#03C 1px dashed;

    

     }   

</style>

<script type="text/javascript">

/*

   思路:

1、创建一个表格table(9*9)

 

2、创建表格所需要的行数tr

     使用循环的方式创建

3、创建表格所需的列td  

     使用循环的方式创建

4、创建文本内容text

     使用循环的方式创建

5、依次追加 文本 >>td>>tr>>table>>div

 

   */ 

  //绘制表格

  function drawTable(){

    //创建一个表格

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

     //给表格加上边框

     table.setAttribute("border",1);

     //外层循环控制行数

     for(var i=1;i<=9;i++){

           //循环创建tr

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

          //内层循环创建列数

           for(var j=1;j<=i;j++){

                 //先创建text

                 var text=document.createTextNode(j+"*"+i+"="+i*j);

                  

                  //创建列

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

                

                  //文本追加到td

                    td.appendChild(text);

                  //td追加到tr

                    tr.appendChild(td);

                  }

            //tr追加到table   

            table.appendChild(tr);

            }

    

     //table追加到div中

     document.getElementById("d1").appendChild(table);

     }

 

 

//删除table的行

 

  function delTable(){

    

   //获得table

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

      //获得table

      var table=tr[0].parentNode;

      根据table删除tr 移除最后一行

      table.removeChild(tr[tr.length-1]);

    

    

     }

//非常重要

function getClass(){

   document.getElementById("d1").className="bbb";

   alert(document.getElementById("d1").className);

   }

 

 

</script>

</head>

 

<body>

<div id="d1" class="aaaa"></div>

 

<input type="button" value="绘制9*9的乘法表" οnclick="drawTable()">

 

<input type="button" value="删一行" οnclick="delTable()">

 

<input type="button" value="getClass" οnclick="getClass()">

</body>

</html>

 

 

使用dom添加和删除表格

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>添加表格</title>

<style type="text/css">

#d1{

   width:500px;      

   height:300px;

   background:#F66;

   }

 

</style>

<script type="text/javascript">

//刷新时只显示表头

  var flag=true;

 //添加时只显示增加行数,不再重复添加表头

var fg=false;

//删除时传id

var idd=1;

 function addtable(){

    

    var username=document.getElementById("username").value;

    var sex=document.getElementById("sex").value;

    var phone=document.getElementById("phone").value;

    var mail=document.getElementById("mail").value;

    //var add=document.getElementById("button").value;

  

  

  

    //创建表格

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

    table.setAttribute("border",1);

    table.setAttribute("width",500);

    table.setAttribute("height",40);

    

    

     //th

     var arr=new Array("姓名","性别","电话","邮箱","操作");

   

    //添加删除按钮

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

      input.setAttribute("type","button");

      input.setAttribute("value","删除");

     

  

    //tr

    var str=new Array(username,sex,phone,mail,"");

    

    

  

   //创建表头

   if(flag){

    for(var i=1;i<=1;i++){

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

      for(var j=1;j<=5;j++){

            

             //th内容 

         var text1=document.createTextNode(arr[j-1]);                

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

            th.appendChild(text1);

             tr.appendChild(th);

           

             }      

           table.appendChild(tr);

           }

    

   }

  

   //创建表的内容

  

   if(fg){

  

    

      

   //行数

    for(var i=1;i<=1;i++){

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

           tr.setAttribute("align","center");

      for(var j=1;j<=5;j++){

            

           

  

            //tr内容

            var text=document.createTextNode(str[j-1]);          

         

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

           

         

            if(j==5){

  

     //把按钮添加到td中

       td.appendChild(input);

       input.setAttribute("id","aa"+idd);

          //alert(idd);

        input.setAttribute("onclick","deltable(this.id)");

                

                   }

            td.appendChild(text);

           

             tr.appendChild(td);

             }      

           table.appendChild(tr);

           }

         

            idd+=1;

   }

     document.getElementById("d1").appendChild(table);

     flag=false;

     fg=true;

  

    }

    

//删除行    

  function deltable(did){

 

    // var input=document.getElementsByTagName("input");

    // var table=input[0].parentNode.parentNode.parentNode;

     //alert(table.tagName);

     //alert(input[did-1]);

     //table.removeChild(tr[tr.length-1]);

    

     var input=document.getElementById(did);

    

     var table=input.parentNode.parentNode.parentNode;

     //alert(table.nodeName);

    // alert(did);

    //alert(table.firstChild.tagName);

    table.removeChild(input.parentNode.parentNode);

    

    //alert(document.getElementsByTagName("tr").length);

    

    

     } 

 

 

</script>

</head>

 

<body οnlοad="addtable()">

 

<div id="d1"></div>

 

<form method="post" name="myform">

姓名:<input type="text" id="username" name="username"/>

性别:<input type="text" id="sex" name="sex"/><br><br>

电话:<input type="text" id="phone" name="phone"/>

邮箱:<input type="text" id="mail" name="mail"/><br><br>

   &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;   &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;   &nbsp;  &nbsp;  &nbsp;  &nbsp;  &nbsp;  

   <input type="button" id="button" name="button" value="添加" οnclick="addtable()"/>

    

      <input type="hidden" id="hidden" name="hidden" value="hidden"/>

    

     

</form>

</body>

</html>

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
使用Core DOM方式动态添加表格可以通过以下步骤实现: 1. 创建一个table元素,并设置其属性和样式。 2. 创建一个thead元素,并添加表头行和单元格。 3. 创建一个tbody元素,并添加表格数据行和单元格。 4. 将thead和tbody元素添加table元素中。 5. 将table元素添加到文档中的指定位置。 例如,以下代码可以动态创建一个包含表头和两行数据的表格,并将其添加到文档中: ``` // 创建table元素 var table = document.createElement("table"); table.setAttribute("border", "1"); table.style.width = "100%"; // 创建thead元素 var thead = document.createElement("thead"); var headerRow = document.createElement("tr"); var headerCell1 = document.createElement("th"); headerCell1.appendChild(document.createTextNode("Name")); var headerCell2 = document.createElement("th"); headerCell2.appendChild(document.createTextNode("Age")); headerRow.appendChild(headerCell1); headerRow.appendChild(headerCell2); thead.appendChild(headerRow); // 创建tbody元素 var tbody = document.createElement("tbody"); var dataRow1 = document.createElement("tr"); var dataCell1 = document.createElement("td"); dataCell1.appendChild(document.createTextNode("John")); var dataCell2 = document.createElement("td"); dataCell2.appendChild(document.createTextNode("30")); dataRow1.appendChild(dataCell1); dataRow1.appendChild(dataCell2); var dataRow2 = document.createElement("tr"); var dataCell3 = document.createElement("td"); dataCell3.appendChild(document.createTextNode("Jane")); var dataCell4 = document.createElement("td"); dataCell4.appendChild(document.createTextNode("25")); dataRow2.appendChild(dataCell3); dataRow2.appendChild(dataCell4); tbody.appendChild(dataRow1); tbody.appendChild(dataRow2); // 将thead和tbody添加tabletable.appendChild(thead); table.appendChild(tbody); // 将table添加到文档中的指定位置 var container = document.getElementById("container"); container.appendChild(table); ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值