利用jquery如何从json中读取数据追加到html中


Posted in jQuery onDecember 01, 2017

JSON 格式

json 是 Ajax 中使用频率最高的数据格式,在浏览器和服务器中之间的通讯可离不开它。

JSON 格式说明

需要特别注意的是,在 JSON 中的属性名是需要使用引号引起来的。

1.下载安装jquery

可通过下面的方法引入在线版本的js:

<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>

参考安装文档:https://3water.com/zt/jquerydown.htm

2.准备一个json格式的文件,后缀可以不是.json

例如下面是result.json的格式

{
 "title":"【UI测试结果】-转转2017/1/23 14:47",
 "starttime":"2017/1/23 15:00 45",
 "endtime":"2017/1/23 15:01 42",
 "passcount":10,
 "failurecount":5,
 "resultinfo":[
 {
 "name":"发布",
 "moudle":"Publish",
 "pass":"true",
 "onecepass":"true",
 "log":"true"
 },
 {
 "name":"登录",
 "moudle":"Login",
 "pass":"false",
 "onecepass":"true",
 "log":"asserterrorlog",
 "failurereason":{
  "errorlog":"asserterror",
  "errorimg":"./登录.jpg"
  }
 }
 ]
}

3.通过$.getJSON获得Json文件的数据

例如下面的例子:读取result.json文件的内容,存储到result变量中,结果是一个json格式

$.getJSON('./result.json',function(result){}

4.通过【$('#元素id').after(html内容);】将html内容添加到定位到的元素后面

元素定位方式

$("#id"):定位到id,
$(“p"):定位到标签p,其他标签同理
$(“.class”):定位到class

插入html内容位置:

  • append() - 在被选元素的结尾插入内容
  • prepend() - 在被选元素的开头插入内容
  • after() - 在被选元素之后插入内容
  • before() - 在被选元素之前插入内容

Json数据的操作

JSON对象[key]来读取内容:result['title'],或者用result.”title"

数组的对象值,可以通过$.each来获得数据:

$.each(JSON数组对象,function(遍历索引i,遍历对象){操作遍历的对象})

读取result.json,追加html的代码如下

(jquery需要写在<script>标签内)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script src="https://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
//使用getJSON方法读取json数据,
//注意:info.json可以是不同类型文件,只要其中的数据为json类型即可
 $.getJSON('./result.json',function(result){
 var html_title='';
 var html_resultinfo='';
 
 html_title += '<b>'+result["title"]+'</b>';
 $('#resultitle').after(html_title);
 $.each(result["resultinfo"],function(i,item){
 if(item["pass"]=="true") {
 html_resultinfo += '<tr><td>' + item['name'] + '</td>' +
 '<td>' + item['moudle'] + '</td>' +
 '<td>' + item["pass"] + '</td>' +
 '<td>' + item['onecepass'] + '</td>' +
 '<td id="' + item['moudle'] + '" class="collapsed" onclick="collapsedisplay(' + item['moudle'] + ')"><u style="color: blue;">展开</u></td></tr>';
 html_resultinfo +='<tr id="' + item['moudle'] + 'info" class="collapsedinfo" style="display:none"><td colspan="5">' + item['log'] + '</td></tr>';
 }
$('#infotitle').after(html_resultinfo);//after方法:在每个匹配的元素之后插入内容。
 });
});
 
</script>
</HEAD>

<BODY>
<div style="margin-top: 30px">
 <div style="font-size: 30px;text-align: center">
 <p id="resultitle" ></p>
 </div>
 </div>
 <div id="resultinfo" style="clear: both;padding-top: 30px">
 <table style="width: 1080px">
 <tr id="infotitle">
 <th style="width:360px">用例名称</th>
 <th style="width:200px">模块名称</th>
 <th style="width:180px">是否成功</th>
 <th style="width:180px">一次成功</th>
 <th style="width:160px">详情</th></tr>
 </table>
 </div>

</div>
</BODY>
</HTML>

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

jQuery 相关文章推荐
jquery中each循环的简单回滚操作
May 05 jQuery
jQuery实现手势解锁密码特效
Aug 14 jQuery
jquery实现企业定位式导航效果
Jan 01 jQuery
jQuery实现点击旋转,再点击恢复初始状态动画效果示例
Dec 11 jQuery
jQuery实现适用于移动端的跑马灯抽奖特效示例
Jan 18 jQuery
jQuery ajax仿Google自动提示SearchSuggess功能示例
Mar 28 jQuery
详解jQuery如何实现模糊搜索
May 10 jQuery
一文快速了解JQuery中的AJAX
May 31 jQuery
jQuery zTree树插件的使用教程
Aug 16 jQuery
jQuery实现每日秒杀商品倒计时功能
Sep 06 jQuery
jquery传参及获取方式(两种方式)
Feb 13 jQuery
jQuery实现图片切换效果
Oct 19 jQuery
JS和JQuery实现雪花飘落效果
Nov 30 #jQuery
jQuery zTree 异步加载添加子节点重复问题
Nov 29 #jQuery
jQuery图片加载失败替换默认图片方法汇总
Nov 29 #jQuery
jquery animate动画持续运动的实例
Nov 29 #jQuery
JQuery 又谈ajax局部刷新
Nov 27 #jQuery
jQuery Datatables表头不对齐的解决办法
Nov 27 #jQuery
javaScript和jQuery自动加载简单代码实现方法
Nov 24 #jQuery
You might like
PHP封装的Twitter访问类实例
2015/07/18 PHP
PHP异常处理Exception类
2015/12/11 PHP
javascript preload&amp;lazy load
2010/05/13 Javascript
jquery中获取select选中值的代码
2011/06/27 Javascript
Jquery进度条插件 Progress Bar小问题解决
2011/07/12 Javascript
Javascript的各种节点操作实例演示代码
2012/06/27 Javascript
Jquery事件的连接使用示例
2013/06/18 Javascript
js判断iframe内的网页是否滚动到底部触发事件
2014/03/18 Javascript
JavaScript数组对象实现增加一个返回随机元素的方法
2015/07/27 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
2015/08/17 Javascript
Nodejs之http的表单提交
2017/07/07 NodeJs
vue中监听返回键问题
2019/08/28 Javascript
解决Layui当中的导航条动态添加后渲染失败的问题
2019/09/25 Javascript
layui表格设计以及数据初始化详解
2019/10/26 Javascript
Vue页面刷新记住页面状态的实现
2019/12/27 Javascript
详解Python操作RabbitMQ服务器消息队列的远程结果返回
2016/06/30 Python
Python初学时购物车程序练习实例(推荐)
2017/08/08 Python
win7+Python3.5下scrapy的安装方法
2018/07/31 Python
django框架中间件原理与用法详解
2019/12/10 Python
学生如何注册Pycharm专业版以及pycharm的安装
2020/09/24 Python
详解HTML5中ol标签的用法
2015/09/08 HTML / CSS
HTML5拖放效果的实现代码
2016/11/17 HTML / CSS
美国设计师精美珠宝购物网:Netaya
2016/08/28 全球购物
美国家居用品和厨具购物网站:DealsDot
2019/10/07 全球购物
印度领先的眼镜电子商务网站:Lenskart
2019/12/16 全球购物
英国手工制作的现代与经典的沙发和床:Love Your Home
2020/09/26 全球购物
会计电算一体化个人简历的自我评价
2013/10/15 职场文书
董事长秘书岗位职责
2013/11/29 职场文书
点菜员岗位职责范本
2014/02/14 职场文书
致长跑运动员加油稿
2014/02/20 职场文书
德语专业求职信
2014/03/12 职场文书
《青山处处埋忠骨》教学反思
2014/04/22 职场文书
经典禁毒标语
2014/06/16 职场文书
用人单位终止解除劳动合同证明书
2014/10/06 职场文书
市委常委会班子党的群众路线教育实践活动整改方案
2014/10/25 职场文书
Vue Mint UI mt-swipe的使用方式
2022/06/05 Vue.js