如何从javascript上的JSON对象中获取数据?

时间:2016-01-09 18:43:54

标签: javascript jquery json

我有一些Javascript / jQuery代码,它返回一个JSON对象并将其打印在HTML div中。如何在Javascript中访问JSON对象的特定值?

$(document).ready(function() {
    $('#question').on('submit', function() {
        event.preventDefault();
        var query = $('#request').serialize();
        $.ajax({
            method: "GET",
            url: "durhamServer.php?".concat(query),
            success: function(result) {
                $("#response").html("<p>" + result + "</p>");
        }});
    });
});

在这种情况下的结果是我想要的JSON对象,例如,它带有

{
    "durhamResponse": *response,
    "twitterResponse": *response
}

*response是来自服务器的响应。如何将*response作为值? 当我尝试html result[0]html result["durhamResponse"]时,它无效。

如何访问JSON对象中的值?

4 个答案:

答案 0 :(得分:0)

JSON.parse()函数将JSON解析为JavaScript对象。

你想使用这样的东西:

$.ajax({
    method: "GET",
    url: "durhamServer.php?".concat(query),
    success: function(result) {
        var parsedResult = JSON.parse(result);
        $("#response").html("<p>" + parsedResult.durhamResponse + "</p>");
    }
});

答案 1 :(得分:0)

您可以使用result

var resultObj = JSON.parse(result)转换为对象

JSON函数应该在所有modern browsers

中原生可用

答案 2 :(得分:0)

var jsonObject = JSON.parse(result);

您可以在任何浏览器javascriptconsole中轻松测试:

console.log(JSON.parse('{“test”:1}'));

答案 3 :(得分:0)

$.ajax({
   method: "GET", 
   url: "durhamServer.php?".concat(query),  
   dataType: "json",//just to be sure
   success: function(result) {
       $("#response").html("<p>" + result.durhamResponse + "</p>");
   }
});