在Ajax响应中解析Json数组

Parsing Json Array In Ajax Response

本文关键字:Json 数组 Ajax 响应      更新时间:2024-03-01

我正在使用一个应用程序,该应用程序进行ajax调用并获得json响应。响应如下所示:

    "msg":"successful.","data":{"fee":"100","balance":{"0":"12180"},"status":{"0":"0"}}

代码应用程序逻辑测试"status"字段的值,并在用响应填充文本框之前检查它是否为零。

问题是没有正确访问"状态"字段。。(我相信)因此,显示响应的条件从来都不是真的。

代码为:

   if(data_array.data.status == 0) {/// do stuff

我认为这种访问状态字段的方法是错误的。。

我试过这个

   if(data_array.data.status.0 == 0) {///

但我犯了一个错误。。。。我应该试试吗。。

    data_array.data.status[0]==0...

如何访问"状态"字段值?

感谢

您解析JSON字符串了吗?如果没有,请尝试以下操作:

jsonStr = '{"msg":"successful.","data":{"fee":"100","balance":
{"0":"12180"},"status":{"0":"0"}}}';
jsonObj = JSON.parse(jsonStr);
status = jsonObj.data.status[0];
if(status == 0) { 
    // do some code 
}

TRY:

   var obj = jQuery.parseJSON(e);
   var status = obj.status["0"];

未捕获的SyntaxError:意外的令牌:

错误与不正确访问字段无关(尽管您应该使用[0]["0"])。用大括号{}包围JSON,它将修复解析错误。

var obj = {"msg": "successful.","data":{"fee": "100","balance":{"0": "12180"},"status":{"0":"0"}}};
<button onclick="alert(obj.data.status[0]);">Click me!</button>