通过其值获取属于JSON对象的一组对象

时间:2012-10-24 22:32:38

标签: jquery json jquery-mobile getjson

我正在使用jQuery mobile开发一个Phonegap应用程序,我正在使用本地JSON文件存储一堆东西。

我想要使用JSON文件中的各种对象和值来动态填充页面,其布局类似于......

{"root" :[    
{"thingy" : "Bobby",
      "bits" : {
        "stuff" : {
          "One" : 1,
          "Two" : "Too"
        }
      },
      "bobs" : {
        "nicknackOne" : {
          "Three" : 3,
          "Four" : "Fore"
        },
        "nicknackTwo" : {
          "Five" : 5,
          "Six" : "Sicks"
        }
      }
    },
{"thingy" : "Majig",
      "bits" : {
        "stuff" : {
          "Seven" : "Ceven",
          "Eight" : "Ate"
        }
      },
      "bobs" : {
        "nicknackOne" : {
          "Nine" : 9,
          "Ten" : "Tenne"
        },
        "nicknackTwo" : {
          "Eleven" : 11,
          "Twelve" : "Tw' Elve"
        }
      }
    }
]}

一个页面创建一个链接列表,其中包含来自'thingy'的“Bobby”和“Majig”。 'thingy'的值保存为全局变量,我想在新页面上使用它来显示所有附加的子对象。

所以我很难接受价值 - “鲍比”并展示一切联系。

喜欢做的事情是这样的......

  $.getJSON(url, {request just"Bobb"} function(data) {
//Inject the values in 'data' as HTML
});

请耐心等待,我很新,还在努力掌握jQuery。所有人都非常感谢。

提前致谢。

1 个答案:

答案 0 :(得分:1)

据我所知,如果没有服务器端处理该类型的请求,您就无法请求静态JSON文件的特定部分。您需要拉出整个文件,然后提取所需的部分。

$.getJSON(url, function(data) {
  for (var i=0;i<data.root.length;i++){
    if (data.root[i].thingy == "Bobby"){
      // do stuff
    }
  }
});