通过商店从JSON数组中获取JSON响应数据

时间:2013-02-05 05:25:59

标签: sencha-touch-2

我们以JSON格式获得响应,但我们无法获取并打印数据。

var dstore = Ext.getStore('DomesticStore');
dstore.sync();
dstore.load();
console.log(dstore.getData().items);
// this line prints the output but unable to fetch inside array data.

1 个答案:

答案 0 :(得分:1)

我有一个获取JSON数据的应用程序。 当你得到商店调用on方法。然后使用records数组访问数据。

var Store1 = Ext.getStore('DomesticStore').on('load', function (store, records, successful, operation, eOpts) {   
        if(successful == false){
            console.log("Could not load store. ");
        }
        var e;

        for (var i = 0; i < records.length; i++) {
             e = records[i];
             console.log(e.get('elementname'));
        }
});

这将通过JSON数组获取字段名称的每个值。

我的JSON数据看起来像这样

{   
    "countries": [
        {
            "name": "United States",
            "2001": 128500000,
            "2002": 141800000,
            "2003": 160637000,
            "2004": 184819000,
            "2005": 203700000,
            "2006": 229600000,
            "2007": 249300000,
            "2008": 261300000,
            "2009": 274300000,
            "2010": 278900000,
            leaf: true
        }
    ]
}

我使用该代码从记录数组中获取每个国家/地区,然后是每个国家/地区的名称字段。