利用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插件Echarts实现的渐变色柱状图
Mar 23 jQuery
jQuery Plupload上传插件的使用
Apr 19 jQuery
jquery仿京东商品放大浏览页面
Jun 06 jQuery
关于jQuery.ajax()的jsonp碰上post详解
Jul 02 jQuery
jQuery Pagination分页插件_动力节点Java学院整理
Jul 17 jQuery
JQuery 又谈ajax局部刷新
Nov 27 jQuery
jquery自定义显示消息数量
Dec 19 jQuery
jQuery实现的下雪动画效果示例【附源码下载】
Feb 02 jQuery
jQuery实现的监听导航滚动置顶状态功能示例
Jul 23 jQuery
jQuery实现form表单基于ajax无刷新提交方法实例代码
Nov 04 jQuery
jQuery实现动态加载瀑布流
Sep 01 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 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
PHP使用DES进行加密与解密的方法详解
2013/06/06 PHP
php使用redis的有序集合zset实现延迟队列应用示例
2020/02/20 PHP
Javascript读取cookie函数代码
2010/10/16 Javascript
jquery模拟按下回车实现代码
2011/09/20 Javascript
jQuery中jqGrid分页实现代码
2011/11/04 Javascript
深入理解JavaScript系列(1) 编写高质量JavaScript代码的基本要点
2012/01/15 Javascript
JS控件的生命周期介绍
2012/10/22 Javascript
JS预览图像将本地图片显示到浏览器上
2013/08/25 Javascript
bootstrap table 服务器端分页例子分享
2015/02/10 Javascript
jQuery焦点图插件SaySlide
2015/12/21 Javascript
jquery实现的判断倒计时是否结束代码
2016/02/05 Javascript
jQuery常见的选择器及用法介绍
2016/12/20 Javascript
JS日程管理插件FullCalendar简单实例
2017/02/07 Javascript
canvas+gif.js打造自己的数字雨头像的示例代码
2017/10/26 Javascript
深入理解JS的事件绑定、事件流模型
2018/05/13 Javascript
Vue弹出菜单功能的实现代码
2018/09/12 Javascript
vue实现广告栏上下滚动效果
2020/11/26 Vue.js
[15:35]教你分分钟做大人:天怒法师
2014/10/30 DOTA
Python使用py2exe打包程序介绍
2014/11/20 Python
Python中shape计算矩阵的方法示例
2017/04/21 Python
Python中pyecharts安装及安装失败的解决方法
2020/02/18 Python
sklearn和keras的数据切分与交叉验证的实例详解
2020/06/19 Python
python求解汉诺塔游戏
2020/07/09 Python
简述 Python 的类和对象
2020/08/21 Python
python3实现语音转文字(语音识别)和文字转语音(语音合成)
2020/10/14 Python
HTML5 直播疯狂点赞动画实现代码 附源码
2020/04/14 HTML / CSS
美国波道夫·古德曼百货官网:Bergdorf Goodman
2017/11/07 全球购物
Omio俄罗斯:一次搜索公共汽车、火车和飞机的机票
2018/11/17 全球购物
解释一下抽象方法和抽象类
2016/08/27 面试题
2014年元旦活动方案
2014/02/15 职场文书
小学生演讲稿大全
2014/04/25 职场文书
装修施工安全责任书
2014/07/24 职场文书
2014年健康教育工作总结
2014/11/20 职场文书
工作自我推荐信范文
2015/03/25 职场文书
优秀共产党员事迹材料2016
2016/02/29 职场文书