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 相关文章推荐
javascript innerHTML使用分析
Dec 03 Javascript
Javascript 页面模板化很多人没有使用过的方法
Jun 05 Javascript
Jquery 类网页微信二维码图块滚动效果具体实现
Oct 14 Javascript
js打造数组转json函数
Jan 14 Javascript
JQuery实现样式设置、追加、移除与切换的方法
Jun 11 Javascript
使用BootStrap实现标签切换原理解析
Mar 14 Javascript
bootstrap精简教程_动力节点Java学院整理
Jul 14 Javascript
原生JS封装_new函数实现new关键字的功能
Aug 12 Javascript
vue中使用带隐藏文本信息的图片、图片水印的方法
Apr 24 Javascript
JS表单验证插件之数据与逻辑分离操作实例分析【策略模式】
May 01 Javascript
vue过滤器实现日期格式化的案例分析
Jul 02 Javascript
Angular性能优化之第三方组件和懒加载技术
May 10 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
怎么样可以把 phpinfo()屏蔽掉?
2006/11/24 PHP
php 取得瑞年与平年的天数的代码
2009/08/10 PHP
php empty,isset,is_null判断比较(差异与异同)
2010/10/19 PHP
采集邮箱的php代码(抓取网页中的邮箱地址)
2012/07/17 PHP
php数组去重实例及分析
2013/11/26 PHP
php实例分享之二维数组排序
2014/05/15 PHP
ThinkPHP在新浪SAE平台的部署实例
2014/10/31 PHP
php版微信返回用户text输入的方法
2016/11/14 PHP
php读取本地json文件的实例
2018/03/07 PHP
基于逻辑运算的简单权限系统(实现) JS 版
2007/03/24 Javascript
引用外部js乱码问题分析及解决方案
2013/04/12 Javascript
js获取页面传来参数的方法
2014/09/06 Javascript
JavaScript检测鼠标移动方向的方法
2015/05/22 Javascript
详解使用React全家桶搭建一个后台管理系统
2017/11/04 Javascript
vue 中基于html5 drag drap的拖放效果案例分析
2018/11/01 Javascript
微信小程序开发技巧汇总
2019/07/15 Javascript
vue cli3 配置proxy代理无效的解决
2019/10/30 Javascript
Vuex的API文档说明详解
2020/02/05 Javascript
vue-cli3访问public文件夹静态资源报错的解决方式
2020/09/02 Javascript
Python 用matplotlib画以时间日期为x轴的图像
2019/08/06 Python
python选取特定列 pandas iloc,loc,icol的使用详解(列切片及行切片)
2019/08/06 Python
Python判断三段线能否构成三角形的代码
2020/04/12 Python
python如何进行矩阵运算
2020/06/05 Python
Python Switch Case三种实现方法代码实例
2020/06/18 Python
CSS3中的Media Queries学习笔记
2016/05/23 HTML / CSS
个人自荐书
2013/12/20 职场文书
十岁生日父母答谢词
2014/01/18 职场文书
上班玩游戏检讨书
2014/02/07 职场文书
微信营销策划方案
2014/02/24 职场文书
采购求职信
2014/03/17 职场文书
《云房子》教学反思
2014/04/20 职场文书
国家助学金感谢信
2015/01/21 职场文书
结婚通知短信大全
2015/04/17 职场文书
辅导员学期工作总结
2015/08/14 职场文书
考研经验交流会策划书
2015/11/02 职场文书
十个Python自动化常用操作,即拿即用
2021/05/10 Python