2012-08-25 68 views
0

名字我有它返回的JSONObject这样的应用程序:访问JSONArray通过在JavaScript

Result: 
{ 
status: "200", 
data: { 
exposedItemsList: [ 
{ 
type: "process", 
itemID: "25.22982aaf-aff7-4e03-9c7c-a8475bf48354", 
itemReference: "/25.22982aaf-aff7-4e03-9c7c-a8475bf48354", 
processAppID: "2066.18beb803-e14e-4f6f-9d08-a807091aea7e", 
snapshotID: "2064.c0d236be-b5c8-463a-a38d-7267af836918", 
snapshotName: "SP20", 
snapshotCreatedOn: "2012-08-22T09:28:22Z", 
display: "Access Request", } 
] 
} 
} 

我用下面函数来获取JSON:

$.get("url of my application", function (data) { 
        alert("Data Loaded: " + data); 
        ; 
       }); 

这工作,并返回整个的JSONObject。但是,我想访问“exposedItemsList”JSONArray和它内的元素。 我试图

alert("Data Loaded: " + data.exposedItemsList[0].type); 

但ID没有工作......

请告知。

在此先感谢

回答

0

我可以通过添加

var obj = JSON.parse(data); 
0

两个可能的答案:

  1. 数据是一个字符串,而不是一个对象(在这种情况下,你将不得不解析/ EVAL吧),
  2. 你必须写data.data.exposedListItems[0].type,因为数据中包含最顶层的对象,其中有一个数据字段:

    $获得(,功能(结果){ 警报“我的应用程序的URL”(“数据加载:” + result.data .exposedListItems [0] .TYPE); });

+0

感谢答复解决此问题。我可以通过添加var obj = JSON.parse(data)来解决此问题; – myrachxp10