使用JavaScript为PhoneGap Android应用程序进行JSON解析

时间:2011-11-17 07:16:59

标签: javascript json parsing cordova

在我的应用程序中,我想点击网址,我用以获取 JSON格式的返回数据,如下所示:

{
    "Status": {
        "itemlist": [{
            "image": "http://XXXXXXXXXXXXXXXXXX.com/images/original/1316145577.jpg",
            "id": "1"
            Name: "xxx"
        }, {
            "image": "http://XXXXXXXXXXXXXXXXXX.com/images/original/1316145577.jpg",
            "id": "2"
            Name: "xxx"
        }]
    }
}

我想进行JSON解析并使用JavaScript 在 listview中显示返回值。请帮我。我使用以下代码进行了解析:

function appReady() {
    alert("verified");
    var API = "http://XXXXXXXXXXXXXXXXXXXXXXXXX";
    check(API);
}

function check(API) {
    alert("entered");
    var http_request = new XMLHttpRequest();
    alert(http_request);
    http_request.open("GET", API, false);
    http_request.send(null);
    var my_JSON_object = http_request.responseText;
    alert(my_JSON_object);
    var data = JSON.parse(my_JSON_object);
    var Itemlist = [];
    for (var i = 0; i < Status.length; i++) {
        Itemlist[i] = data.Status.Itemlist[0].id;
        alert(id);
        Itemlist[i] = data.Status.Itemlist[0].Name;
        alert(Name);
        Itemlist[i] = data.Status.Itemlist[0].image;
        alert(image);
    }
    alert("id");
}
document.addEventListener("deviceready", appReady, false);

我希望show progress spinner而不是我的代码中抛出的警告。我还想创建一个包含返回数据的列表视图。请帮帮我。

1 个答案:

答案 0 :(得分:1)

首先在给定的JSON字符串中存在一些语法错误。

你可以这样试试

var itemList = json.Status.itemlist;
for(var i=0;i<itemList.length;i++)
{
    alert('Image:'+itemList[i].image
     +'\nID:'+itemList[i].id
        +'\nName:'+itemList[i].Name);
}

参见

DEMO