JavaScript: 为表格插入或删除行

    首先,要了解一下HTML DOM 中的方法:

 

    deleteRow(index): 从表格删除指定位置的行;

    deleteCell(index): 从行中删除指定位置的一格;

    insertRow(index): 在表格指定位置插入新行;

    insetCell(index): 为行内部指定位置插入一格;

    innerHTML: 设置或者返回指定位置的开始标签与结束标签之间的HTML内容;

    rowIndex: 返回该行在表中的位置;

    parentNode: 返回父节点;

 

    插入行:

function insertRowForTable(tableId)
{
  var tableNode = document.getElementById(tableId);
  var newRow = tableNode.insertRow(-1);
  newRow.insertCell(-1).innerHTML = newRow.rowIndex;
  newRow.insertCell(-1).innerHTML = "<input type = 'button' value = 'delete' onclick = deleteRowFromTable(this) />";
}

 

    删除行:

function deleteRowFromTable(rowNode)
{
  var row = rowNode.parentNode.parentNode;
  var tableId = row.parentNode.parentNode.id;
  var index = row.rowIndex;
  document.getElementById(tableId).deleteRow(index);
}

 

    测试页面:

 

<!--
To change this template, choose Tools | Templates
and open the template in the editor.
-->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title></title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <script type="text/javascript">
            function insertRowForTable(tableId)
            {
                var tableNode = document.getElementById(tableId);
                var newRow = tableNode.insertRow(-1);
                newRow.insertCell(-1).innerHTML = newRow.rowIndex;
                newRow.insertCell(-1).innerHTML = "<input type = 'button' value = 'delete' onclick = deleteRowFromTable(this) />";
            }
            function deleteRowFromTable(rowNode)
            {
                var row = rowNode.parentNode.parentNode;
                var tableId = row.parentNode.parentNode.id;
                var index = row.rowIndex;
                document.getElementById(tableId).deleteRow(index);
            }
        </script>
    </head>
    <body>
        <input type ="button" value ="add" οnclick="insertRowForTable('myTable')" />
        <table id="myTable">
        </table>
    </body>
</html>
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值