利用jQuery解析获取JSON数据


Posted in jQuery onApril 08, 2017

JSON 是一种比较方便的数据形式,下面使用$.getJSON方法,实现获得JSON数据和解析,都挺方便简单的。从http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=? 这个地址得到JSON数据 并且分析里面的结构,生成图片和相关链接等:

复制代码

$(function(){
  var url="http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?"
   //使用getJSON方法取得JSON数据
  $.getJSON(
  url,
  //处理数据 data指向的是返回来的JSON数据
  function(data){
    //生成标题和标题连接
    var tit="<a href='"+ data.link +"'>"+data.title +"<\/a>";
    $("h1").html(tit); 

    //出现在指定位置H1 内
    $("#ginfo").find("p").eq(0).html(data.modified);
    $("#ginfo").find("p").eq(1).html(data.generator);
    var lis="";  
    //li 列表项目
    $(data.items).each(function(i,ite){  
     //遍历JSON数据得到所需形式
     lis+="<li>";
     lis+="<a href='"+ ite.link +"'><img src='"+ite.media.m +"' title='"+ ite.title +"'><\/><\/a>";
     lis+="<div>";
     lis+=ite.description; 
     lis+="<\/div><\/li>";  
     })
    $("ul").html(lis); 
    //将遍历出来的数据呈现在所需位置
    $("li").hover(function(){$(this).addClass("hov")}, function(){$(this).removeClass("hov")}); 
  }
  )
 })

HTML:

<div class="main">
 <div class="ginfo" id="ginfo"> 
  <h1></h1>
  <p></p>
  <p></p>
 </div>
 <ul>  
 </ul>
</div>

最后说一下JSON数据的格式,其实它就是个文本文件,可以方便的解析,也可以直接查看。

({
  "title": "Recent Uploads tagged cat",
  "link": "http://www.flickr.com/photos/tags/cat/",
  "description": "",
  "modified": "2009-08-03T01:50:45Z",
  "generator": "http://www.flickr.com/",
  "items"  {
   "title": "DSC06844",
   "link": "http://www.flickr.com/photos/g_bugel/3783605340/",
   "media": {"m":"http://farm3.static.flickr.com/2638/3783605340_a3cfc9eeb9_m.jpg"},
   "date_taken": "2009-07-06T07:27:59-08:00",
   "description": "<p><a href=\"http://www.flickr.com/people/g_bugel/\">g.bugel<\/a> posted a photo:<\/p> <p><a href=\"http://www.flickr.com/photos/g_bugel/3783605340/\" title=\"DSC06844\"><img src=\"http://farm3.static.flickr.com/2638/3783605340_a3cfc9eeb9_m.jpg\" width=\"240\" height=\"180\" alt=\"DSC06844\" /><\/a><\/p> ",
   "published": "2009-08-03T01:50:45Z",
   "author": "nobody@flickr.com (g.bugel)",
   "author_id": "38658309@N00",
   "tags": "china cat feline beijing 2009 chinalab chinalab2009"  
},{......});

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

jQuery 相关文章推荐
jQuery插件FusionWidgets实现的Bulb图效果示例【附demo源码下载】
Mar 23 jQuery
JS与jQuery实现子窗口获取父窗口元素值的方法
Apr 17 jQuery
jQuery实现jQuery-form.js实现异步上传文件
Apr 28 jQuery
jQuery dateRangePicker插件使用方法详解
Jul 28 jQuery
jquery获取链接地址和跳转详解(推荐)
Aug 15 jQuery
jQuery 1.9版本以上的浏览器判断方法代码分享
Aug 28 jQuery
jQuery中.attr()和.data()的区别分析
Sep 03 jQuery
jQuery实现可兼容IE6的滚动监听功能
Sep 20 jQuery
jQuery图片查看插件Magnify开发详解
Dec 25 jQuery
基于Bootstrap和JQuery实现动态打开和关闭tab页的实例代码
Jun 10 jQuery
jQuery实现简单飞机大战
Jul 05 jQuery
详解jQuery的核心函数和事件处理
Feb 18 jQuery
JavaScript使用链式方法封装jQuery中CSS()方法示例
Apr 07 #jQuery
jQuery中map函数的两种方式
Apr 07 #jQuery
jQuery获取table下某一行某一列的值实现代码
Apr 07 #jQuery
jQuery实现文章图片弹出放大效果
Apr 06 #jQuery
jQuery自定义图片上传插件实例代码
Apr 04 #jQuery
jQuery使用unlock.js插件实现滑动解锁
Apr 04 #jQuery
利用jquery正则表达式在页面验证url网址输入是否正确
Apr 04 #jQuery
You might like
smarty section简介与用法分析
2008/10/03 PHP
php中模拟POST传递数据的两种方法分享
2011/09/16 PHP
php判断str字符串是否是xml格式数据的方法示例
2017/07/26 PHP
javascript五图轮播切换实用版
2012/08/17 Javascript
原生js获取宽高与jquery获取宽高的方法关系对比
2014/04/04 Javascript
jQuery往返城市和日期查询实例讲解
2015/10/09 Javascript
jquery获取url参数及url加参数的方法
2015/10/26 Javascript
修复jQuery tablesorter无法正确排序的bug(加千分位数字后)
2016/03/30 Javascript
JQuery 传送中文乱码问题的简单解决办法
2016/05/24 Javascript
javascript解决小数的加减乘除精度丢失的方案
2016/05/31 Javascript
DOM操作原生js 的bug,使用jQuery 可以消除的解决方法
2016/09/04 Javascript
详解vue axios中文文档
2017/09/12 Javascript
webpack css加载和图片加载的方法示例
2018/09/11 Javascript
vue进入页面时滚动条始终在底部代码实例
2019/03/26 Javascript
JS实现数据动态渲染的竖向步骤条
2020/06/24 Javascript
[50:02]完美世界DOTA2联赛循环赛 Magma vs IO BO2第一场 11.01
2020/11/02 DOTA
Python中的条件判断语句与循环语句用法小结
2016/03/21 Python
python脚本实现数据导出excel格式的简单方法(推荐)
2016/12/30 Python
python使用Plotly绘图工具绘制水平条形图
2020/03/25 Python
Python使用LDAP做用户认证的方法
2019/06/20 Python
Python坐标线性插值应用实现
2019/11/13 Python
Python基础类继承重写实现原理解析
2020/04/03 Python
TensorFlow中如何确定张量的形状实例
2020/06/23 Python
python和js交互调用的方法
2020/06/23 Python
Python暴力破解Mysql数据的示例
2020/11/09 Python
请写出char *p与"零值"比较的if语句
2014/09/24 面试题
如何查看在weblogic中已经发布的EJB
2012/06/01 面试题
怎样自定义一个异常类
2016/09/27 面试题
大宝sod蜜广告词
2014/03/21 职场文书
校园安全标语
2014/06/07 职场文书
乒乓球兴趣小组活动总结
2014/07/08 职场文书
学生抄袭作业的检讨书
2014/10/02 职场文书
新闻人物通讯稿
2014/10/09 职场文书
学生检讨书怎么写?
2014/10/10 职场文书
场地使用证明模板
2014/10/25 职场文书
工作自我评价范文
2019/03/21 职场文书