【问题标题】:How to get Particular Json Data By Filtering Through Url?如何通过 Url 过滤获取特定的 Json 数据?
【发布时间】:2015-11-21 08:19:12
【问题描述】:

我是使用 Json 的新手,我想从 Json 数组中获取特定的 Id 数据
这是我正在使用的 api 网址。

http://example/plapi/areas?jsoncallback=?

这个url返回json数组,比如

([{"area_id":"25","ca_id":"0","area_name":"Durgapuram","alias_area":"","area_sp‌​l":"No","area_lat":"16.52069","area_lng":"80.64067","area_desc":"","area_image":"‌​","map_image":"","area_status":"1","city_id":"27","position":"0","m_keyword":""},‌​{"area_id":"26","ca_id":"0","area_name":"Arundalpet","alias_area":"","area_spl":"‌​No","area_lat":"16.30520","area_lng":"80.44169","area_desc":"","area_image":"","m‌​ap_image":"","area_status":"1","city_id":"31","position":"0","m_keyword":""})]

我只想获取数据 city_id=31。

要获取 id 为 31 的数据,我正在这样做

var data = {
"id": "31",
};
$.getJSON("http://example/plapi/areas?jsoncallback=?",JSON.stringify(data) ,function(result){console.log(result);
});

但它什么也没返回。

我只想获取 31 个 id 关联数据而不是其他数据。请帮我怎么办?

【问题讨论】:

  • 不是你需要的。您需要解析 json 并提取一些数据,还是需要从后端获取一些特定数据?
  • 我不认为jsoncallback 用于定义您的查询的id
  • 上面的 url 返回我拥有的所有区域,以 Json 数组格式,但我只需要 id 为 31 的数据
  • 您的 URL 看起来像是 JSONP 资源的 API 点。无论哪种方式,您都需要发布 JSON 对象的示例,以便我们告诉您如何按 ID 过滤。
  • 不要将 JSON 数据作为评论,更新您的问题。

标签: javascript jquery ajax json json-api


【解决方案1】:

查找 JS 代码以仅从您的 JSON 获取 City_ID:-

var jsonData = [
    {
       
        "area_id": "25",
        "ca_id": "0",
        "area_name": "Durgapuram",
        "alias_area": "",
        "area_spl": "No",
        "area_lat": "16.52069",
        "area_lng": "80.64067",
        "area_desc": "",
        "area_image": "1",
        "map_image": "",
        "area_status": "1",
         "city_id": "27",
        "position": "0",
        "m_keyword": ""
    },
   {
        
       "area_id": "26",
        "ca_id": "0",
        "area_name": "Arundalpet",
        "alias_area": "",
        "area_spl": "No",
        "area_lat": "16.30520",
        "area_lng": "80.44169",
        "area_desc": "",
        "area_image": "",
        "map_image": "",
        "area_status": "1",
       "city_id": "31",
        "position": "0",
        "m_keyword": ""
    }
];

for(var obj in jsonData){
    if(jsonData.hasOwnProperty(obj)){
    for(var prop in jsonData[obj]){
        if(jsonData[obj].hasOwnProperty(prop)){
            if(prop=="city_id"){
                prop;
                alert(prop);
                break;
            }

        }
    }
}
}

乐于助人

【讨论】:

  • 我不想使用 if 条件限制值,想通过在 $.getJson('url', {city_id=31}) 中传递值来过滤 url 本身。
猜你喜欢
  • 2019-07-07
  • 1970-01-01
  • 2011-08-22
  • 1970-01-01
  • 2018-05-09
  • 1970-01-01
  • 1970-01-01
  • 2020-09-19
  • 2018-03-14
相关资源
最近更新 更多