如何使用标准的HTML标签和属性来创建一个白色的表格,且边框使用黑色线条

发布时间:2022-12-28编辑:zhushican阅读(449)

1案例描述

         DOM对表格的操作

如何使用标准的HTML标签和属性来创建一个白色的表格,且边框使用黑色线条

2案例思路

         DOM操作表格,首先回顾一下如何使用标准的HTML标签和属性来创建一个白色的表格,且边框使用黑色线条。接下来,将表格视为一个大的元素,然后在<table>标签中使用.innerHTML属性为表格中添加一个新的内容,从而实现新增一行的效果;还可以使用DOM中专门针对表格插入的方法insertRow()完成新增一行,同时针对该行使用insertCell新增单元格。最后单元格的操作,都可以使用DOM提供的JavaScript接口来进行操作。

3.案例实现

案例5-4   example04

 

<!DOCTYPE html>

 

<html >

 

<head >

 

    <meta  charset="UTF-8">

 

    <title>DOM对表格的操作</title>

 

    <script>

 

        function createTable() {  // 创建一张一行两列的表格

 

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

 

           mytable.border =  "0";  // 也可以使用setAttribute进行属性的设置

 

            mytable.setAttribute("cellspacing",  "2");

 

             mytable.setAttribute("width", "60%");

 

            mytable.bgColor =  "black";

 

            var  myrow = document.createElement("tr"); // 创建表格的第一行

 

            myrow.bgColor = "white";

 

            var mycell =  document.createElement("td"); // 创建表格的第一行第一列

 

            mycell.height =  "80";

 

             mycell.appendChild(document.createTextNode("1行第1"));

 

             myrow.appendChild(mycell);

 

            // 创建表格的第一行第二列

 

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

 

             mycell.appendChild(document.createTextNode("1行第2"));

 

             myrow.appendChild(mycell);

 

            // tr这一行的节点添加到table

 

             mytable.appendChild(myrow);

 

            // 将表格元素添加到body当中

 

             document.body.appendChild(mytable);

 

        }

 

        function insertRow1() {  // 利用innerHTML向表格的最后插入一行

 

            var mytable =  document.getElementById("mytable");

 

            var newRow =  "<tr bgcolor='orange'><td>3行第1</td>" +

 

                "<td>3行第2</td><td>3行第3</td></tr>";

 

            mytable.innerHTML =  mytable.innerHTML + newRow;

 

        }

 

        function insertRow2() { //  利用insertRow向表格的任意位置插入一行

 

            var mytable =  document.getElementById("mytable");

 

            var newRow =  mytable.insertRow(-1);

 

            var mytd1 =  newRow.insertCell(-1);

 

            mytd1.innerHTML =  "3行第1";

 

            var mytd2 =  newRow.insertCell(-1);

 

            mytd2.innerHTML =  "3行第2";

 

            var mytd3 =  newRow.insertCell(-1);

 

            mytd3.innerHTML = "3行第3";

 

             newRow.style.backgroundColor = "orange";

 

            newRow.style.height =  "40px";

 

        }

 

        function deleteTable() {  // 删除整个表格,该方法针对其它元素同样适用

 

            var mytable =  document.getElementById("mytable");

 

            mytable.remove();

 

        }

 

        function deleteRow() {// 删除表格中的一行,使用deleteRow专用方法

 

            var mytable =  document.getElementById("mytable");

 

             mytable.deleteRow(0);  // 参数0表示删除第一行

 

        }

 

        // 删除表格中的一列,先获取表格的行,再指定删除该行的某一列

 

        function deleteCol() {

 

            var mytable =  document.getElementById("mytable");

 

            var mytr =  mytable.rows[1];

 

            mytr.deleteCell(2);

 

        }

 

        function operateCell() {  // 利用表格的行列索引操作单元格

 

            var mytable =  document.getElementById("mytable");

 

            var cell =  mytable.rows[1].cells[2];  // 获取到第2行第3

 

            cell.innerHTML =  "第二行第三列";

 

             cell.style.backgroundColor = "yellow";

 

        }

 

    </script>

 

</head>

 

<body onload="tableCell()">

 

<table border="0" cellspacing="2"  bgcolor="black" id="mytable">

 

    <tr  bgcolor="white">

 

        <td>1行第1</td> <td>1行第2</td><td>1行第3</td>

 

    </tr>

 

    <tr  bgcolor="white" id="mytr">

 

        <td>2行第1</td> <td>2行第2</td>  <td>2行第3</td>

 

     </tr>

 

</table>

 

<br/>

 

<input type="button" value="创建表格" onclick="createTable()">

 

<input type="button" value="插入行一" onclick="insertRow1()">

 

<input type="button" value="插入行二" onclick="insertRow2()">

 

<input type="button" value="删除一行" onclick="deleteRow()">

 

<input type="button" value="删除一列" onclick="deleteCol()">

 

<input type="button" value="修改单元格" onclick="operateCell()">

 

<input type="button" value="删除表格" onclick="deleteTable()">

 

</body>

 

</html>

 

运行效果如图5-12所示

如何使用标准的HTML标签和属性来创建一个白色的表格,且边框使用黑色线条

5-12  DOM对表格的操作


标签HTML标签

评论