2

我有一个从 Ajax 调用返回的 JSON 响应,但似乎根本无法访问 JSON 的任何部分。

JSON 格式为:[{"id":"1","description":"Employee","coverage":"Center","covered":"X"}]

我尝试了以下方法,但没有任何效果:

success: function(result, request){
    jsonData = Ext.util.JSON.decode(result.responseText);
    var id = jsonData.id;
    alert(id);
 }

 * returns as undefined

success: function(result,request){
    jsonData = result.responseText  ##shows the Json perfectly
    alert(jsonData.length) ### displays as number of chars, not how many objects in json string
}
4

2 回答 2

5

Ext.util.JSON.decode是 ExtJS3 方法并且Ext.JSON.decode在 ExtJS4 中,因为您没有指出您正在使用哪个版本的 ExtJS,所以将使用故障安全方式,Ext.decode这在 ExtJS3 和 ExtJS4 中都可用

success: function(result, request){
    jsonData = Ext.decode(result.responseText);
    console.log(jsonData);
}
于 2012-04-13T17:47:05.223 回答
0

您可以为此使用“邪恶” eval

var jsonData;
eval('jsonData =' + result.responseText);
alert(jsonData[0].id);
于 2012-04-13T16:46:40.777 回答