从json兄弟中提取数据?

问题描述

| 来自picasaweb的一些json: http://picasaweb.google.com/data/feed/api/user/100489095734859091829?kind=album&access=visible&alt=json-in-script&thumbsize=144c 这是jsonview整理的输出-这两个都显示在同一\“ level \”上,但是树上有几个分支(我真的还没有\“ get \” json-您能告诉我吗? !)。
gphoto$id: {
$t: \"5068801490268828641\"
},gphoto$name: {
$t: \"ByronBay\"
}
我想说“给定gphoto $ name \'ByronBay \',我想要它的gphoto $ id!\”。 我找到了几个不错的json浏览器;一个在线Java:http://pivot.apache.org/demos/json-viewer.html和Firefox / Chrome扩展:http://jsonview.com/ 仍然没有一个更明智的选择。我正在尝试使用的脚本http://oss.oetiker.ch/jquery/jquery.EmbedPicasaGallery.js很棒,但是需要用户提供相册ID,这意味着打开RSS并挖掘出正确的数字。但是我在返回的json中看到专辑ID是专辑标题的同级。 我可以找到从给定的父级获取“子级”数据的各种其他方式,但是当涉及到这样的同级数据时,我确实是一个空白。     

解决方法

        这些对象都是同一个\'parent \'
json.feed.entry[index]
的成员,因此您可以遍历
json.feed.entry
并检查
gphoto$name.$t
$.getJSON(\'http://picasaweb.google.com/data/feed/api/user/\'+
          \'100489095734859091829?kind=album&access=visible&\'+
          \'alt=json&thumbsize=144c&callback=?\',function(data) {
for(var i=0;i<data.feed.entry.length;++i)
{
  if(data.feed.entry[i].gphoto$name.$t==\'ByronBay\')
  {
    alert(data.feed.entry[i].gphoto$id.$t);return;
  }
}
});
或使用jQuery \的grep():
$.getJSON(\'http://picasaweb.google.com/data/feed/api/user/\'+
          \'100489095734859091829?kind=album&access=visible&\'+
          \'alt=json&thumbsize=144c&callback=?\',function(data) {

  arr = jQuery.grep(jQuery.makeArray( data.feed.entry ),function(a){
        return (a.gphoto$name.$t==\'ByronBay\');
        });
  if(arr.length)
  {
    alert(arr[0].gphoto$id.$t);
  }
  else
  {
    alert(\'no match\');
  }
});
    

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...