js与jQuery实现获取table中的数据并拼成json字符串操作示例


Posted in jQuery onJuly 12, 2018

本文实例讲述了js与jQuery实现获取table中的数据并拼成json字符串操作。分享给大家供大家参考,具体如下:

核心代码如下:

JavaScript代码:

function tabToJSON(id) {
    var trs = document.getElementById(id).getElementsByTagName("tr");//获得tr数组
    var titles = trs[0].getElementsByTagName("td");  //获得表头td数组
    var json = "";
    for(var i = 1; i < trs.length; i++) {
      var tds = trs[i].getElementsByTagName("td");  
      json += "{"; 
      //拼装json
      for(var j = 0; j < tds.length; j++) 
        json += titles[j].innerHTML + ":" + tds[j].innerHTML + ",";
      json = json.substring(0, json.length - 1) + "},";
    }
    json = "[" + json.substring(0, json.length - 1) + "]";
    document.getElementById("test").innerHTML = json;
}

jQuery代码:

function tabToJSONForJquery(id) {
    var titles = $("#" + id).find("tr:first td");  //获得表头td数组
    //遍历非表头的,tr、td...拼装json
    var json = "[" + $("#" + id).find("tr:not(:first)").map(function(i, e) {
      return "{" + $(e).children("td").map(function(j, el) {
        return $(titles[j]).html() + ":" + $(el).html();
      }).get().join(",") + "}";
    }).get().join(",") + "]";
    $("#test").html(json);
}

注:为便于测试,建议jQuery直接使用cdn如:

<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>

测试HTML部分(table表格与json数据显示部分):

<table id="tbl" border="1">
<tr><td>编号</td><td>年龄</td><td>单元</td><td>房间号</td></tr>
<tr><td>1</td><td>25</td><td>1</td><td>1-2</td></tr>
<tr><td>2</td><td>22</td><td>1</td><td>1-1</td></tr>
<tr><td>3</td><td>21</td><td>3</td><td>3-3</td></tr>
<tr><td>4</td><td>20</td><td>2</td><td>2-2</td></tr>
<tr><td>5</td><td>35</td><td>4</td><td>4-2</td></tr>
</table>
<div id="test"></div>

使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试得到json数据为:

[{编号:1,年龄:25,单元:1,房间号:1-2},{编号:2,年龄:22,单元:1,房间号:1-1},{编号:3,年龄:21,单元:3,房间号:3-3},{编号:4,年龄:20,单元:2,房间号:2-2},{编号:5,年龄:35,单元:4,房间号:4-2}]

感兴趣的朋友亲自动手测试一下看看效果如何

jQuery 相关文章推荐
如何编写jquery插件
Mar 29 jQuery
jQuery自定义图片上传插件实例代码
Apr 04 jQuery
基于jQuery实现图片推拉门动画效果的两种方法
Aug 26 jQuery
JQuery实现table中tr上移下移的示例(超简单)
Jan 08 jQuery
jQuery实现的滑块滑动导航效果示例
Jun 04 jQuery
jquery实现的简单轮播图功能【适合新手】
Aug 17 jQuery
jQuery插件simplePagination的使用方法示例
Apr 28 jQuery
jQuery 动画与停止动画效果实例详解
May 19 jQuery
jquery实现有过渡效果的tab切换
Jul 17 jQuery
jQuery+ajax实现用户登录验证
Sep 13 jQuery
JavaScript枚举选择jquery插件代码实例
Nov 17 jQuery
JS实现选项卡插件的两种写法(jQuery和class)
Dec 30 jQuery
jQuery实现简单复制json对象和json对象集合操作示例
Jul 09 #jQuery
jQuery插件实现弹性运动完整示例
Jul 07 #jQuery
jQuery实现仿京东防抖动菜单效果示例
Jul 06 #jQuery
基于jQuery使用Ajax动态执行模糊查询功能
Jul 05 #jQuery
jQuery实现炫丽的3d旋转星空效果
Jul 04 #jQuery
jQuery实现table表格checkbox全选的方法分析
Jul 04 #jQuery
jQuery实现表单动态添加与删除数据操作示例
Jul 03 #jQuery
You might like
php邮件发送的两种方式
2020/04/28 PHP
Laravel框架路由管理简单示例
2019/05/07 PHP
js中匿名函数的N种写法
2010/09/08 Javascript
Jquery 类网页微信二维码图块滚动效果具体实现
2013/10/14 Javascript
java、javascript实现附件下载示例
2014/08/14 Javascript
jQuery on方法传递参数示例
2014/12/09 Javascript
JavaScript数组Array对象增加和删除元素方法总结
2015/01/20 Javascript
javascript实现图片上传前台页面
2015/08/18 Javascript
jquery+html5时钟特效代码分享(可设置闹钟并且语音提醒)
2020/03/30 Javascript
浅谈javascript中的加减时间
2016/07/12 Javascript
angularJs的ng-class切换class
2017/06/23 Javascript
webpack 最佳配置指北(推荐)
2020/01/07 Javascript
JavaScript读取本地文件常用方法流程解析
2020/10/12 Javascript
[53:29]完美世界DOTA2联赛循环赛 DM vs Matador BO2第二场 11.04
2020/11/05 DOTA
王纯业的Python学习笔记 下载
2007/02/10 Python
关于Python数据结构中字典的心得
2017/12/04 Python
python读取中文txt文本的方法
2018/04/12 Python
Python实现注册、登录小程序功能
2018/09/21 Python
Puppeteer使用示例详解
2019/06/20 Python
Pandas之DataFrame对象的列和索引之间的转化
2019/06/25 Python
python 画条形图(柱状图)实例
2020/04/24 Python
Python的Django框架实现数据库查询(不返回QuerySet的方法)
2020/05/19 Python
python对execl 处理操作代码
2020/06/22 Python
Django实现内容缓存实例方法
2020/06/30 Python
python使用建议与技巧分享(一)
2020/08/17 Python
Shopee新加坡:东南亚与台湾电商平台
2019/01/25 全球购物
美国手工艺品市场的领导者:Annie’s
2019/04/04 全球购物
SQL语言面试题
2013/08/27 面试题
Unix控制后台进程都有哪些进程
2016/09/22 面试题
平面设计自荐信
2013/10/07 职场文书
入党自我评价优缺点
2014/01/25 职场文书
2014公安机关纪律作风整顿思想汇报
2014/09/13 职场文书
音乐教育专业自荐信
2014/09/18 职场文书
群众路线四风问题整改措施
2014/09/27 职场文书
公司备用金管理制度
2015/08/04 职场文书
Nginx配置根据url参数重定向
2022/04/11 Servers