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 EasyUI 组件加上“清除”功能实例详解
Apr 11 jQuery
jQuery Validate格式验证功能实例代码(包括重名验证)
Jul 18 jQuery
jQuery读取本地的json文件(实例讲解)
Oct 31 jQuery
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 jQuery
jQuery实现的模仿雨滴下落动画效果
Dec 11 jQuery
jQuery动态生成的元素绑定事件操作实例分析
May 04 jQuery
jQuery实现动态生成年月日级联下拉列表示例
May 11 jQuery
jQuery实现判断滚动条滚动到document底部的方法分析
Aug 27 jQuery
jQuery实现提交表单时不提交隐藏div中input的方法
Oct 08 jQuery
jQuery实现消息弹出框效果
Dec 10 jQuery
深入分析jQuery.one() 函数
Jun 03 jQuery
jquery实现有过渡效果的tab切换
Jul 17 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
2019年漫画销量排行榜:鬼灭登顶 海贼单卷制霸 尾田盛赞鬼灭
2020/03/08 日漫
几个php应用技巧
2008/03/27 PHP
php全角字符转换为半角函数
2014/02/07 PHP
PHP APC配置文件2套和参数详解
2014/06/11 PHP
Laravel中扩展Memcached缓存驱动实现使用阿里云OCS缓存
2015/02/10 PHP
CentOS下搭建PHP环境与WordPress博客程序的全流程总结
2016/05/07 PHP
js中匿名函数的N种写法
2010/09/08 Javascript
jQuery EasyUI API 中文文档 - EasyLoader 加载器
2011/09/29 Javascript
可恶的ie8提示缺少id未定义
2014/03/20 Javascript
基于iframe实现类似于ajax的页面无刷新
2014/05/31 Javascript
JavaScript中this详解
2015/09/01 Javascript
使用jQuery+EasyUI实现CheckBoxTree的级联选中特效
2015/12/06 Javascript
封装属于自己的JS组件
2016/01/27 Javascript
AngularJS实用开发技巧(推荐)
2016/07/13 Javascript
一个仿微博登陆邮箱提示框js开发案例
2016/07/28 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
2017/03/08 Javascript
解决JS外部文件中文注释出现乱码问题
2017/07/09 Javascript
实例详解JSON取值(key是中文或者数字)方式
2017/08/24 Javascript
js实现canvas图片与img图片的相互转换的示例
2017/08/31 Javascript
Vue.js移动端左滑删除组件的实现代码
2017/09/08 Javascript
Python开发常用的一些开源Package分享
2015/02/14 Python
Python中使用Inotify监控文件实例
2015/02/14 Python
浅谈numpy库的常用基本操作方法
2018/01/09 Python
python excel转换csv代码实例
2019/08/26 Python
Python上下文管理器全实例详解
2019/11/12 Python
Python3.7将普通图片(png)转换为SVG图片格式(网站logo图标)动起来
2020/04/21 Python
基础的CSS3弹性盒Flexbox布局使用实例
2016/04/08 HTML / CSS
美国电视购物HSN官网:HSN
2016/09/07 全球购物
世界上最大的街头服饰网站:Karmaloop
2017/02/04 全球购物
家用个人磨皮机:Trophy Skin
2017/03/30 全球购物
美国运动鞋类和服装零售连锁店:Shoe Palace
2019/08/13 全球购物
理发店策划方案
2014/06/05 职场文书
鼋头渚导游词
2015/02/05 职场文书
Python+Matplotlib+LaTeX玩转数学公式
2022/02/24 Python
Redis基本数据类型List常用操作命令
2022/06/01 Redis