如何从JSON对象访问数据?

时间:2015-07-30 22:45:49

标签: javascript jquery json object

http://i.stack.imgur.com/9Pha0.png 这是我的JSON的一部分。我需要访问photo_file_url

我试着把它写成

$.ajax( {
        url: "http://www.panoramio.com/map/get_panoramas.php?set=public&from=0&to=1&minx="+longitude+"&miny="+latitude+"&maxx="+lonmax+"&maxy="+latmax+"&size=original&mapfilter=true",
        type: "get",
        success: function(response) {
        document.getElementById("back").innerHTML = response.photos.photo_file_url;
        }
});

但它不起作用

5 个答案:

答案 0 :(得分:0)

由于您正在执行异步GET请求,因此您也可以使用

$.getJSON("http://www.panoramio.com/map/get_panoramas.php?set=public&from=0&to=1&minx="+longitude+"&miny="+latitude+"&maxx="+lonmax+"&maxy="+latmax+"&size=original&mapfilter=true", function(response) {
  // response will be a json object
  document.getElementById("back").innerHTML = response.photos.photo_file_url;
});

我建议使用此解决方案 ,因为您正在执行与$.getJSON()同义的异步GET请求

答案 1 :(得分:0)

$.ajax( {
        url: "http://www.panoramio.com/map/get_panoramas.php?set=public&from=0&to=1&minx="+longitude+"&miny="+latitude+"&maxx="+lonmax+"&maxy="+latmax+"&size=original&mapfilter=true",
        type: "get",
        success: function(response) {
        response = $.parseJson(response); //parse json object
        document.getElementById("back").innerHTML = response.photos.photo_file_url;
        }
});

答案 2 :(得分:0)

success: function(response) {
    document.getElementById("back").innerHTML = JSON.parse(response).photos[0].photo_file_url;
}

或者

$.ajax({
    dataType: "json"
    succes: ...

$.getJSON

答案 3 :(得分:0)

Ajax-Parse JS/JQuery

How to access JSON object in JavaScript

我不知道这些会有多大帮助,但希望这是一个起点。

答案 4 :(得分:-1)

您的回复是一个字符串,您可以使用JSON.parse将其转换为对象。

编辑:对于兼容性$.parseJSONSee this answer