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实现按比例缩放图片的方法
Apr 29 jQuery
jQuery实现 RadioButton做必选校验功能
Jun 15 jQuery
使用 jQuery 实现表单验证功能
Jul 05 jQuery
jQuery扇形定时器插件pietimer使用方法详解
Jul 18 jQuery
简单实现jQuery手风琴效果
Aug 18 jQuery
jquery-file-upload 文件上传带进度条效果
Nov 21 jQuery
jQuery实现判断上传图片类型和大小的方法示例
Apr 11 jQuery
JQuery实现ajax请求的示例和注意事项
Dec 10 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
jquery实现垂直无限轮播的方法分析
Jul 16 jQuery
jQuery实现移动端下拉展现新的内容回弹动画
Jun 24 jQuery
jQuery是用来干什么的 jquery其实就是一个js框架
Feb 04 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 将excel导入mysql
2009/11/09 PHP
PHP中的use关键字概述
2014/07/23 PHP
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
2016/01/27 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
2016/10/19 PHP
THINKPHP5分页数据对象处理过程解析
2020/10/28 PHP
jQuery代码优化之基本事件
2011/11/01 Javascript
javascript 基础篇2 数据类型,语句,函数
2012/03/14 Javascript
JavaScript中Date.toSource()方法的使用教程
2015/06/12 Javascript
js简单工厂模式用法实例
2015/06/30 Javascript
Jquery修改image的src属性,图片不加载问题的解决方法
2016/05/17 Javascript
Jquery和Js获得元素标签名称的方法总结
2016/10/08 Javascript
JS正则子匹配实例分析
2016/12/22 Javascript
nodejs批量下载图片的实现方法
2017/05/19 NodeJs
JS 组件系列之Bootstrap Table的冻结列功能彻底解决高度问题
2017/06/30 Javascript
json前后端数据交互相关代码
2018/09/19 Javascript
vue 搭建后台系统模块化开发详解
2019/05/01 Javascript
Electron vue的使用教程图文详解
2019/07/05 Javascript
JavaScript实现的开关灯泡点击切换特效示例
2019/07/08 Javascript
layui表格内放置图片,并点击放大的实例
2019/09/10 Javascript
python开发之thread实现布朗运动的方法
2015/11/11 Python
python文件操作相关知识点总结整理
2016/02/22 Python
Django中的ajax请求
2018/10/19 Python
Python使用指定字符长度切分数据示例
2019/12/05 Python
Python模块的定义,模块的导入,__name__用法实例分析
2020/01/07 Python
Python3爬虫里关于代理的设置总结
2020/07/30 Python
Pycharm安装第三方库失败解决方案
2020/11/17 Python
倩碧英国官网:Clinique英国
2018/08/10 全球购物
软件工程师面试题
2012/06/25 面试题
综合内勤岗位职责
2014/04/14 职场文书
小学生手册家长评语
2014/04/16 职场文书
农业项目投资意向书
2015/05/09 职场文书
小学学习委员竞选稿
2015/11/20 职场文书
2016年度员工工作表现评语
2015/12/02 职场文书
python自动化测试之Selenium详解
2022/03/13 Python
人物搭配车车超萌联名预备中 【咒术迴战】 ⨯ 【天竺鼠车车】 展开合作
2022/04/11 日漫
微软官方消息,在 2023 年 4 月 11 日之后微软将不再为 Office 2013 和 Skype for Business 2015 提供安全更新
2022/04/21 数码科技