从响应中获取json值

时间:2011-04-11 17:32:35

标签: javascript json

{"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"}

如果我提醒响应数据,我看到上述内容,如何访问id值?

我的控制器返回如下:

return Json(
    new {
        id = indicationBase.ID
    }
);

在我的ajax成功中,我有这个:

success: function(data) {
    var id = data.id.toString();
}

它说data.idundefined

5 个答案:

答案 0 :(得分:23)

如果响应是在json而不是字符串,那么

alert(response.id);
or
alert(response['id']);

,否则

var response = JSON.parse('{"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"}');
response.id ; //# => 2231f87c-a62c-4c2c-8f5d-b76d11942301

答案 1 :(得分:4)

通常您可以通过其属性名称访问它:

var foo = {"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"};
alert(foo.id);

或者你可能有一个需要变成对象的JSON字符串:

var foo = jQuery.parseJSON(data);
alert(foo.id);

http://api.jquery.com/jQuery.parseJSON/

答案 2 :(得分:2)

使用safely-turning-a-json-string-into-an-object

var jsonString = '{"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"}';

var jsonObject = (new Function("return " + jsonString))();

alert(jsonObject.id);

答案 3 :(得分:1)

var results = {"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"}
console.log(results.id)
=>2231f87c-a62c-4c2c-8f5d-b76d11942301

results现在是一个对象。

答案 4 :(得分:0)

如果响应是在json中那么它就像是:

alert(response.id);

否则

var str='{"id":"2231f87c-a62c-4c2c-8f5d-b76d11942301"}';