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插件FusionCharts实现的MSBar3D图效果示例【附demo源码】
Mar 23 jQuery
关于jQuery库冲突的完美解决办法
May 20 jQuery
关于jquery form表单序列化的注意事项详解
Aug 01 jQuery
jQuery获取随机颜色的实例代码
May 21 jQuery
jQuery实现表单动态添加与删除数据操作示例
Jul 03 jQuery
jQuery实现表单动态添加数据并提交的方法
Jul 19 jQuery
jQuery.validate.js表单验证插件的使用代码详解
Oct 22 jQuery
jQuery实现数字自动增加或者减少的动画效果示例
Dec 11 jQuery
jQuery实现经典的网页3D轮播图封装功能【附源码下载】
Feb 15 jQuery
详解jQuery如何实现模糊搜索
May 10 jQuery
jQuery提示框插件SweetAlert用法分析
Aug 05 jQuery
jquery获取并修改触发事件的DOM元素示例【基于target 属性】
Oct 10 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中ADODB类详解
2008/03/25 PHP
php空间不支持socket但支持curl时recaptcha的用法
2011/11/07 PHP
php使用json_encode对变量json编码
2014/04/07 PHP
php求今天、昨天、明天时间戳的简单实现方法
2016/07/28 PHP
Yii2框架数据验证操作实例详解
2018/05/02 PHP
通过命令行生成vue项目框架的方法
2017/07/12 Javascript
vue中实现滚动加载更多的示例
2017/11/08 Javascript
JavaScript callback回调函数用法实例分析
2018/05/08 Javascript
vue中设置、获取、删除cookie的方法
2018/09/21 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
JS中的算法与数据结构之集合(Set)实例详解
2019/08/20 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
基于elementUI竖向表格、和并列的案例
2020/10/26 Javascript
python 不关闭控制台的实现方法
2011/10/23 Python
python使用Berkeley DB数据库实例
2014/09/26 Python
python删除过期log文件操作实例解析
2018/01/31 Python
Tensorflow 利用tf.contrib.learn建立输入函数的方法
2018/02/08 Python
浅谈python配置与使用OpenCV踩的一些坑
2018/04/02 Python
浅谈dataframe中更改列属性的方法
2018/07/10 Python
Django REST framework内置路由用法
2019/07/26 Python
Python实现Restful API的例子
2019/08/31 Python
Django通过dwebsocket实现websocket的例子
2019/11/15 Python
git查看、创建、删除、本地、远程分支方法详解
2020/02/18 Python
python json 递归打印所有json子节点信息的例子
2020/02/27 Python
Pandas对每个分组应用apply函数的实现
2020/12/13 Python
python爬虫如何解决图片验证码
2021/02/14 Python
乌克兰时尚鞋子和衣服购物网站:Born2be
2018/05/24 全球购物
兰蔻法国官方网站:Lancôme法国
2020/02/22 全球购物
什么是servlet
2012/05/08 面试题
什么是就业协议书
2014/04/17 职场文书
就职演讲稿范文
2014/05/19 职场文书
军事博物馆观后感
2015/06/05 职场文书
2015年学校综合治理工作总结
2015/07/20 职场文书
2016年寒假生活小结
2015/10/10 职场文书
Python first-order-model实现让照片动起来
2022/06/25 Python