一个JSON 实例: jQuery 解析JSON数据

JSON 是一种比较方便的数据形式 具体的大家可以参考 http://baike.baidu.com/view/136475.htm  还挺详细的。
今天用JQuery 写了一个JSON的东西,用了 $.getJSON方法,获得JSON数据和解析 都挺方便简单的。
从http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=? 这个地址得到JSON数据 并且分析里面的结构,生成图片和相关链接等:
JS:
$(function(){
        var url="http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?"
        $.getJSON(     //使用getJSON方法取得JSON数据
        url,
        function(data){ //处理数据 data指向的是返回来的JSON数据
                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数据的格式 其实它就是个文本文件,可以方便的解析 也可以直接 查看http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=? 这个地址。 

View Code
   
   
({
" 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 "

},{......});

 点击这里查看DEMO 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值