Javascript动态创建表格及删除行列的方法


Posted in Javascript onMay 15, 2015

本文实例讲述了Javascript动态创建表格及删除行列的方法。分享给大家供大家参考。具体实现方法如下:

<!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">
body,div
{
 margin:0;
 padding:0;
 font-size:14px;
}
table
{
 margin:0 auto;
}
td
{
 border:1px solid green;
 text-align:center;
}
</style>
<script type="text/javascript">
//动态创建表格
function createTable() {
  var divMain = document.getElementById("divMain");
  removeAllChild(divMain); //删除上次添加的表格
  var myTable = document.createElement("table");
  myTable.id = "DynamicTable";
  var myRow = document.getElementById("myRow").value;
  var myCol = document.getElementById("myCol").value;
  var trNode;
  var tdNode;
  var strTmp;
  for (var i = 1; i <= myRow; i++) {
    trNode = myTable.insertRow(-1);
    for (var j = 1; j <= myCol; j++) {
      strTmp ="第"+ i + "行,第"+ j + "列";
      tdNode = trNode.insertCell(-1);
      tdNode.innerHTML = "<a href='javascript:void(0);'>" + strTmp + "</a>";
    }
  }
  divMain.appendChild(myTable); //把表格添加到div中
  //event.srcElement.disabled = "true"; //添加按钮禁用
}
//删除指定节点下的所有子节点
function removeAllChild(nodeObj) {
  while (nodeObj.hasChildNodes()) {
    nodeObj.removeChild(nodeObj.firstChild);
  }
}
//删除行
function DeleteRow() {
  var rowNum = document.getElementById("delRow").value;
  var tbl = document.getElementById("DynamicTable");

  if (tbl == null) {
    alert('请先创建表格');
    return;
  }
  if ((rowNum <= tbl.rows.length) && (rowNum > 0)) {
    tbl.deleteRow(rowNum-1);
  }
  else {
    alert('请输入一个有效的行!');
  }
}
//删除列
function DeleteCol() {
  var colNum = document.getElementById("delCol").value;
  var tbl = document.getElementById("DynamicTable");
  if (tbl == null) {
    alert('请先创建表格');
    return;
  }
  if(tbl.rows.length<=0) {
    alert('表格不存在行');
    return;
  }
  if ((colNum <= tbl.rows[0].cells.length) && (colNum > 0)) {
    for (var i = 0; i < tbl.rows.length; i++) {
      tbl.rows[i].deleteCell(colNum - 1);
    }
  }
  else {
    alert('指定列不存在');
  }
}
</script>
</head>
<body>
请输入行数<input type="text" id="myRow" />,请输入列数
<input type="text" id="myCol" /><br />
<input type="button" value="创建表格" onclick="createTable()" /><br />
<input type="text" id="delRow" /><input type="button" value="删除行" 
onclick="DeleteRow()" /><br />
<input type="text" id="delCol" /><input type="button" value="删除列" 
onclick="DeleteCol()" /><br />
<div id="divMain">
</div>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
JSON 客户端和服务器端的格式转换
Aug 27 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
Jan 08 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
Jan 07 Javascript
浅谈JS日期(Date)处理函数
Dec 07 Javascript
Javascript基础教程之定义和调用函数
Jan 18 Javascript
JavaScript中自带的 reduce()方法使用示例详解
Aug 10 Javascript
js鼠标移动时禁止选中文字
Feb 19 Javascript
JavaScript之underscore_动力节点Java学院整理
Jul 03 Javascript
一个Js文件函数中调用另一个Js文件函数的方法演示
Aug 14 Javascript
微信小程序环境下将文件上传到OSS的方法步骤
May 31 Javascript
后台使用freeMarker和前端使用vue的方法及遇到的问题
Jun 13 Javascript
深入了解JavaScript词法作用域
Jul 29 Javascript
javascript制作的滑动图片菜单
May 15 #Javascript
Javascript通过overflow控制列表闭合与展开的方法
May 15 #Javascript
javascript实现日期按月份加减
May 15 #Javascript
Javascript递归打印Document层次关系实例分析
May 15 #Javascript
Javascript节点关系实例分析
May 15 #Javascript
自己编写的支持Ajax验证的JS表单验证插件
May 15 #Javascript
Javascript中prototype属性实现给内置对象添加新的方法
May 14 #Javascript
You might like
php代码运行时间查看类代码分享
2011/08/06 PHP
兼容ie6浏览器的php下载文件代码分享
2014/07/14 PHP
PHP防止注入攻击实例分析
2014/11/03 PHP
PHP汉字转换拼音的函数代码
2015/12/30 PHP
jquery实现控制表格行高亮实例
2013/06/05 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
关闭ie窗口清除Session的解决方法
2014/01/10 Javascript
javascript浏览器兼容教程之事件处理
2014/06/09 Javascript
javascript框架设计读书笔记之模块加载系统
2014/12/02 Javascript
Javascript之BOM(window对象)详解
2016/05/25 Javascript
原生js图片轮播效果实现代码
2016/10/19 Javascript
vue-cli项目优化方法- 缩短首屏加载时间
2018/04/01 Javascript
nodejs初始化init的示例代码
2018/10/10 NodeJs
Vue开发中遇到的跨域问题及解决方法
2020/02/11 Javascript
js实现手表表盘时钟与圆周运动
2020/09/18 Javascript
Python使用剪切板的方法
2017/06/06 Python
python中Switch/Case实现的示例代码
2017/11/09 Python
python实现ID3决策树算法
2018/08/29 Python
mac使用python识别图形验证码功能
2020/01/10 Python
python中判断数字是否为质数的实例讲解
2020/12/06 Python
详解CSS3 用border写 空心三角箭头 (两种写法)
2017/09/29 HTML / CSS
纯CSS3实现地球自转实现代码(图文教程附送源码)
2012/12/26 HTML / CSS
Probikekit欧盟:在线公路自行车专家
2019/07/12 全球购物
New Balance比利时官方网站:购买鞋子和服装
2021/01/15 全球购物
北京SQL新华信咨询
2016/09/30 面试题
大学生四年生活自我鉴定
2013/11/21 职场文书
社会学专业求职信
2014/02/24 职场文书
高中军训感言500字
2014/02/24 职场文书
英语专业毕业生求职信
2014/05/24 职场文书
爱护花草树木的标语
2014/06/11 职场文书
美术社团活动总结
2014/06/27 职场文书
公司董事长助理工作职责
2014/07/12 职场文书
葬礼主持词
2015/07/02 职场文书
大学体育课感想
2015/08/10 职场文书
Javascript设计模式之原型模式详细
2021/10/05 Javascript
Vertica集成Apache Hudi重磅使用指南
2022/03/31 Servers