使用jQuery在JSON中搜索嵌套列表

使用jQuery在JSON中搜索嵌套列表,jquery,json,search,Jquery,Json,Search,我正在尝试实现一个简单的搜索功能,如果你在搜索框中键入一个城镇,它将为你提供该地区的电话号码。存储此数据的最简单方法是将城镇存储在JSON中的列表中。然而: var abc = { "partner": { "name": "North East & Cumbria (EDT)", "number": "01915008717", "areas": { "authority": ["Allerdale", "Barrow-in-Furness", "C

我正在尝试实现一个简单的搜索功能,如果你在搜索框中键入一个城镇,它将为你提供该地区的电话号码。存储此数据的最简单方法是将城镇存储在JSON中的列表中。然而:

var abc = {
  "partner": {
    "name": "North East & Cumbria (EDT)",
    "number": "01915008717",
    "areas": {
    "authority": ["Allerdale", "Barrow-in-Furness", "Carlisle"]
    }
  }
};


$.each(abc.partner.areas, function(key, val){
  if ((val.authority.search(new RegExp("Carlisle", "i")) != -1)) {
    // Action here
  }
});

出于某种原因,这不起作用。我说的对吗?

嗨,兄弟,根据我理解你的问题,如果你需要任何更新或帮助回复我,我修改了代码

 var abc = {
  "partner": {
    "name": "North East & Cumbria (EDT)",
    "number": "01915008717",
    "areas": {
    "authority": ["Allerdale", "Barrow-in-Furness", "Carlisle"]
    }
  }
};


$.each(abc.partner.areas, function(key, val){
 console.log(val);
  if(jQuery.inArray("Carlisle", val)) {
    console.log(abc.partner.number);
}
});

那里没有无键列表。我遗漏了什么吗?
val.authority
应该是
val
<代码>键将是
“权限”
,而
val
将是阵列,尽管您实际上不需要每个<代码>如果(abc.partner.area.authority.search(…)!=-1)将有多个“partner”对象,我忘了提到这一点。每种方法都是迭代这些方法。Woops:-s根据上面的json,不能有多个合作伙伴对象。这会返回误报,但调整为“if(jQuery.inArray(“Carlisle”,val)!=-1)”就成功了!