这是我的jQuery解析Json结果我从我的一个页面回来。
{ “结果”:真, “操作”: “添加”}
$ .parseJSON(data)没有解析它。我需要获得结果和行动值。
$("#favorite").click(function () {
$.getJSON('/review/favorite/?Id=@(Model.Review.Id)', function (data) {
var result = $.parseJSON(data);
alert(result.Action);
if (result.result == true && result.action == "add") {
alert("add");
} else if (result.result == true && result.action == "delete") {
alert("delete");
}
});
return false;
});
答案 0 :(得分:4)
您无需致电 parseJSON
,已经完成了。因此,只能使用 data.Action
。
此外,它的区分大小写为data.Action
和data.Result
(在上面的if
声明中)
答案 1 :(得分:1)
您可以这样做:
var result = data;
以下是多余的
$.parseJSON(data);
答案 2 :(得分:0)
其他人都是正确的,但我想我会详细说明,因为,我很无聊。
JSON(JavaScript Object Notation)是JavaScript对象的字符串表示形式。您(通常至少)不直接操作JSON数据。相反,您将其转换为它所代表的JavaScript对象,在JavaScript中对它们进行操作,然后在需要时再将其转换回JSON。
$。parseJSON()用于此目的 - 它将JSON字符串转换为实际的JS对象。
然而,getJSON()函数有点特殊,因为它为您解析JSON,然后将生成的JSON数据作为变量“data”传递给回调函数。这意味着您只能看到实际数据 - 您的代码甚至看不到JSON字符串。
我认为名称getJSON有点误导,因为它没有返回 JSON,它获取JSON,解析它并返回JavaScript 对象。