JS控制网页动态生成任意行列数表格的方法


Posted in Javascript onMarch 09, 2015

本文实例讲述了JS控制网页动态生成任意行列数表格的方法。分享给大家供大家参考。具体分析如下:

这是一个非常简单使用的JS在线生成表格的代码效果
通过JS功能代码,直接输入行数和列数就可以自动生成你需要的表格
当然你也可以扩展JS代码实现生成文字的各种形式

<html>

<head>

<title>Js动态生成表格</title>

<style type="text/css">

table{font-size:14px;}

</style>

</head>

<body >

<script language="javascript">

function tableclick(name1,name2,name3){

  Trow=name1.value;

  Tcol=name2.value;

  Tv=name3.value;

  if ((Trow=="") || (Tcol=="") || (Tv=="")){

    alert("请将制作表格的条件填写完整");

  }

  else{

    r=parseInt(Trow);

 c=parseInt(Tcol);

 Table1(r,c,Tv);

  }

}

function tablevalue(a,ai,rows,col,str){

  int1=a.length;

  for (i=0;i<rows;++i){

 for (j=0;j<col;++j){

   if ((j==0)&&(ai>=int1)){break;}

   if (ai>=int1){

   str=str+"<td scope='col'> </td>";

   }

   else{

     if (j==0){

  str=str+"<tr><th scope='col'> "+(a[ai++])+"</th>";

     }

  else{

    if (j==col-1){

      str=str+"<td scope='col'> "+(a[ai++])+"</td>";

    }

    else{

     str=str+"<td scope='col'> "+(a[ai++])+"</td>";

    }

  }

   }

 }

 str=str+"</tr>";

  }

  return str;

}

function Table1(row,col,Str1){

var str="";

  a=new Array();

  s=new String(Str1);

  a=s.split("#");

  int1=a.length;

  ai=0;

  if (col<=int1){

   str=str+"<table width='300' border='4'>";

    for (i=0;i<col;++i){

   if (i==0){

    str=str+"<tr><th scope='col'> "+(a[ai++])+"</th>";

   }

   else{

     if (i==(col-1)){

    str=str+"<th scope='col'> "+(a[ai++])+"</th></tr>";

     }

     else{

    str=str+"<th scope='col'> "+(a[ai++])+"</th>";

     }

   }

 }

    if (int1>col){

      if (row>1){

  str=tablevalue(a,ai,row-1,col,str);

   }

 }

 str=str+ "</table>";

 aa.innerHTML=str;

  }

}

</script>

<form name="form1" method="post" action="">

 <p><b>行数:</b>

    <input name="name1" type="text" style="width:40px" value="4">

    <b>列数:</b>

<input name="name2" type="text" style="width:40px" value="4">

<input type="button" name="Submit3" value="生成表格" onClick="tableclick(document.form1.name1,document.form1.name2,document.form1.name3)"></p>

 <p><b align="top">表值:</b></p>

 <p>

    <input name="name3" wrap="VIRTUAL" style="width:520px " value="COL1#COL2#COL3#COL4#ROW1#A1#A2#a3#ROW2#B1#B2#B3#ROW3#C1#C2#C3">

 </p>

</form>

<div id="aa"></div>

</body>

</html>

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

Javascript 相关文章推荐
如何用ajax来创建一个XMLHttpRequest对象
Dec 10 Javascript
JavaScript中最简洁的编码html字符串的方法
Oct 11 Javascript
jQuery多级弹出菜单插件ZoneMenu
Dec 18 Javascript
jQuery EasyUI封装简化操作
Sep 18 Javascript
vue中七牛插件使用的实例代码
Jul 28 Javascript
Angular2 组件间通过@Input @Output通讯示例
Aug 24 Javascript
微信小程序使用toast消息对话框提示用户忘记输入用户名或密码功能【附源码下载】
Dec 09 Javascript
vue路由懒加载的实现方法
Mar 12 Javascript
JavaScript门道之标准库
May 26 Javascript
JS实现移动端点击按钮复制文本内容
Jul 28 Javascript
vue点击按钮实现简单页面的切换
Sep 08 Javascript
JavaScript数组 几个常用方法总结
Nov 11 Javascript
jQuery随机密码生成的方法
Mar 09 #Javascript
jQuery实现简单的间隔向上滚动效果
Mar 09 #Javascript
jQuery实现鼠标划过展示大图的方法
Mar 09 #Javascript
javascript 对象数组根据对象object key的值排序
Mar 09 #Javascript
jquery插件corner实现圆角边框的方法
Mar 09 #Javascript
jQuery中animate用法实例分析
Mar 09 #Javascript
深入探讨JavaScript String对象
Mar 09 #Javascript
You might like
一致性哈希算法以及其PHP实现详细解析
2013/08/24 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
PHP动态编译出现Cannot find autoconf的解决方法
2014/11/05 PHP
解决ThinkPHP关闭调试模式时报错的问题汇总
2015/04/22 PHP
php邮件发送的两种方式
2020/04/28 PHP
php微信浏览器分享设置以及回调详解
2016/08/01 PHP
PHPStrom 新建FTP项目以及在线操作教程
2016/10/16 PHP
PHP绕过open_basedir限制操作文件的方法
2018/06/10 PHP
Jquery下的26个实用小技巧(jQuery tips, tricks &amp; solutions)
2010/03/01 Javascript
用Javascript评估用户输入密码的强度(Knockout版)
2011/11/30 Javascript
js编码之encodeURIComponent使用介绍(asp,php)
2012/03/01 Javascript
解决jquery submit()提交表单提示:f[s] is not a function
2013/01/23 Javascript
浅析javascript 定时器
2014/12/23 Javascript
jQuery中unbind()方法用法实例
2015/01/19 Javascript
Redis基本知识、安装、部署、配置笔记
2015/03/05 Javascript
Java Mybatis框架入门基础教程
2015/09/21 Javascript
Bootstrap每天必学之导航条(二)
2016/03/01 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
关于vuex的学习实践笔记
2017/04/05 Javascript
jquery动态添加带有样式的HTML标签元素方法
2018/02/24 jQuery
使用jquery DataTable和ajax向页面显示数据列表的方法
2018/08/09 jQuery
React+Webpack快速上手指南(小结)
2018/08/15 Javascript
vue 动态表单开发方法案例详解
2019/12/02 Javascript
原生javascript运动函数的封装示例【匀速、抛物线、多属性的运动等】
2020/02/23 Javascript
swiperjs实现导航与tab页的联动
2020/12/13 Javascript
[02:17]2016国际邀请赛中国区预选赛VG战队领队采访
2016/06/26 DOTA
玩转python爬虫之URLError异常处理
2016/02/17 Python
python 类详解及简单实例
2017/03/24 Python
Sublime开发python程序的示例代码
2018/01/24 Python
python中scikit-learn机器代码实例
2018/08/05 Python
django框架CSRF防护原理与用法分析
2019/07/22 Python
wxPython实现分隔窗口
2019/11/19 Python
CSS3——齿轮转动关键代码
2013/05/02 HTML / CSS
Python 实现绘制子图及子图刻度的变换等问题
2021/05/31 Python
Python实现批量将文件复制到新的目录中再修改名称
2022/04/12 Python
Golang连接并操作MySQL
2022/04/14 MySQL