javascript js 删除表格的行、单元列

本文介绍了一种使用JavaScript动态删除HTML表格中指定行与列的方法。通过两个函数实现:removeCells用于删除指定范围内的列,removeRows用于删除指定范围内的行。此方法适用于需要动态调整表格布局的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

动态删除表格的行、列,有点类似于String中的substring函数。不过这里也有开始删除的位置和删除的长度。但是不包括起始位置,用法和substring类似; <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <title>tab2.html</title> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="this is my page"> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <script type="text/javascript"> //删除table列:从start列开始删除,共删end列(不包括start) function removeCells(tab, start, end) { var rows = tab.rows; for (var i = 0; i < rows.length; i++) { var cells = rows[i].cells; /*for (var j = 0; j < cells.length; j++) { if (j >= start && j <= end) { tab.rows[i].deleteCell(start); } }*/ for (var j = 0; j < end; j++) { tab.rows[i].deleteCell(start); } } } //删除table行,从start行开始删除,共删end行(不包括start) function removeRows(tab, start, end) { var rows = tab.rows; /*for (var i = 0; i < rows.length; i++) { if (i >= start && i <= end) { tab.deleteRow(start); } }*/ for (var i = 0; i < end; i++) { tab.deleteRow(start); } } function deleteCells() { var tab = document.getElementById("tab"); var start = document.getElementById("startCell").value; var end = document.getElementById("endCell").value; if (tab.rows.length > 0) { var cell = tab.rows[0].cells; start = start > cell.length ? cell.length : start; start = start < 0 ? 0 : start; end = end > cell.length ? cell.length : end; end = end < 0 ? 0 : end; } removeCells(tab, start, end); } function deleteRows() { var tab = document.getElementById("tab"); var start = document.getElementById("startRow").value; var end = document.getElementById("endRow").value; start = start > tab.rows.length ? tab.rows.length : start; start = start < 0 ? 0 : start; end = end > tab.rows.length ? tab.rows.length : end; end = end < 0 ? 0 : end; removeRows(tab, start, end); } window.onload = function () { var showDiv = document.getElementById("show"); var htmlTemplate = "<table id='tab' border='1'>"; for (var i = 0; i < 4; i++) { htmlTemplate += "<tr>"; for (var j = 0; j < 13; j++) { htmlTemplate += "<td>" + i + "-" + j + "</td>"; } htmlTemplate += "</tr>"; } htmlTemplate += "</table>"; showDiv.innerHTML = htmlTemplate; } </script> </head> <body> <input type="text" id="startCell" /> <input type="text" id="endCell" /> <input type="button" value="删除列" onclick="deleteCells()"><br/> <input type="text" id="startRow" /> <input type="text" id="endRow" /> <input type="button" value="删除行" onclick="deleteRows()"> <div id="show"></div> </body> </html>

转载于:https://www.cnblogs.com/javaTest/archive/2010/06/18/2589425.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值