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 相关文章推荐
JS中表单的使用小结
Jan 11 Javascript
jquery获取tr并更改tr内容示例代码
Feb 13 Javascript
JavaScript阻止事件冒泡示例分享
Dec 28 Javascript
JS获取图片lowsrc属性的方法
Apr 01 Javascript
整理AngularJS中的一些常用指令
Jun 16 Javascript
JS控制按钮10秒钟后可用的方法
Dec 22 Javascript
jQuery中slidedown与slideup方法用法示例
Sep 16 Javascript
Angular异步变同步处理方法
Aug 13 Javascript
在Vue组件中获取全局的点击事件方法
Sep 06 Javascript
微信小程序自定义弹窗wcPop插件
Nov 19 Javascript
微信小程序单选radio及多选checkbox按钮用法示例
Apr 30 Javascript
vue+elementUI实现表单和图片上传及验证功能示例
May 14 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
同台服务器使用缓存APC效率高于Memcached的演示代码
2010/02/16 PHP
php生成随机颜色的方法
2014/11/13 PHP
PHP中error_reporting()用法详解
2015/08/31 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
Js 弹出框口并返回值的两种常用方法
2010/12/30 Javascript
High Performance JavaScript(高性能JavaScript)读书笔记分析
2011/05/05 Javascript
javascript学习笔记(十七) 检测浏览器插件代码
2012/06/20 Javascript
基于JQuery的模拟苹果桌面Dock效果(稳定版)
2012/10/15 Javascript
javascript中parseInt()函数的定义和用法分析
2014/12/20 Javascript
JavaScript实现拖拽网页内元素的方法
2015/04/15 Javascript
谈谈impress.js初步理解
2015/09/09 Javascript
javascript实现dom元素可拖动
2016/03/21 Javascript
Bootstrap组件系列之福利篇几款好用的组件(推荐)
2016/06/23 Javascript
js实现按钮控制带有停顿效果的图片滚动
2016/08/30 Javascript
Javascript json object 与string 相互转换的简单实现
2016/09/27 Javascript
js简单正则验证汉字英文及下划线的方法
2016/11/28 Javascript
Vue Spa切换页面时更改标题的实例代码
2017/07/15 Javascript
使用SVG基本操作API的实例讲解
2017/09/14 Javascript
在vue中实现嵌套页面(iframe)
2020/07/30 Javascript
js实现双色球效果
2020/08/02 Javascript
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
python通过floor函数舍弃小数位的方法
2015/03/17 Python
Python实现的人工神经网络算法示例【基于反向传播算法】
2017/11/11 Python
教你用Python写安卓游戏外挂
2018/01/11 Python
答题辅助python代码实现
2018/01/16 Python
在Pycharm中使用GitHub的方法步骤
2019/06/13 Python
Python 循环终止语句的三种方法小结
2019/06/24 Python
Python 写入训练日志文件并控制台输出解析
2019/08/13 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
迪梵英国官方网站:Darphin英国
2017/12/06 全球购物
e路東瀛(JAPANiCAN)香港:日本旅游、日本酒店和温泉旅馆预订
2018/11/21 全球购物
投标服务承诺书
2014/05/28 职场文书
出生公证书
2015/01/23 职场文书
篮球赛闭幕式主持词
2015/07/03 职场文书
GTX1650super好不好 gtx1650super显卡属于什么级别
2022/04/08 数码科技