2013-10-30 77 views
0

我想解析这个JSON并从中提取所有数据。我不是一个解析它的专家,所以如果有人可以帮忙,会不会很好?jquery解析数据和结构的html

http://jsfiddle.net/NJMyD/1044/

HTML

<div class="items"> 
     <div class="item"> 
     <a href="#"> 
      <figure> 
      <span><img src="" /></span> 
      <figcaption> 
       <h2 class="pod-title"> 
       <em data-title="Title of Show"></em> 
       </h2> 
       <p class="subtitle"></p> 
      </figcaption> 
      </figure> 
     </a> 
     </div> 
    </div> 
+0

对于初学者来说,在你解析的对象的任何地方都没有'src'和'url'属性。 – Johan

+0

而且你的代码在第9行是错误的。 你必须删除'var myData = JSON.parse(jsonString2);'并使用已经解析过的'data'对象,因为JSON类型返回。 – onionpsy

+0

@psal谢谢,正如我所说我不是一个真正的专家。我怎样才能使用这些数据? – user2505665

回答

0

好吧,你有很多错误的东西在你的代码(应该是str什么?,srcurl没有在JSON对象存在等等......)。

下面是修改脚本,返回所有object.href的:

function getResults(str) { 
    $.ajax({ 
    type: "GET", 
    async: true, 
    dataType: "jsonp", 
    url: 'http://api.stb.search.sky.com/query.json?category=stb&term=andy+murray&sid=sport&adult=true&bouquet=4101&subbouquet=1&epgInfoBits=00020000&epgInfoBitsMask=001a0000&page=1&items=16&uid=4170198908', 
    success: function(data){ 
    console.log(data); 
    $.each(data, function() { 
     $('.items').append(data.href+'<br />'); // <- do what you want here 
    }); 
    } 
    }); 
} 

PS:你必须使用JSONP数据类型跨域Ajax查询!

+0

谢谢,你运行它时能看到什么吗? – user2505665

+0

http://jsfiddle.net/NJMyD/1050/ – user2505665

+0

你必须调用你的函数: add'getResults('');'在你的文件的末尾。 顺便说一句,你可以在你的函数声明中删除'str'并调用它:'getResults();' – onionpsy