在Titanium中的一个数组中获取json数据数组

时间:2014-09-19 17:23:23

标签: javascript titanium

'这是我的JSON messgae。我试图列出该类别下的项目名称。在尝试这个之前,我只是尝试在单一窗口中打印所有项目名称而不使用Titanium中的类别。但我的代码无效。'

  {
     "name" : "Nation",
      {.......
   },
   "menus" : [
   {
          "menuId" : 33,
          "menuName": "Breakfast", 
           .........{
          },
         "menuItems": [
          {
          "itemName": "Thrilled Cheese",
                "category": "Entree",
           },
           {
          "itemName": "Today's Soup - Small",
                "category": "Entree",
           },
           {
          "itemName": "Lrg. Fountain Drink",
                "category": "Entree",
           },
           {
          "itemName": "Lemon Juice",
                "category": "Entree",
           },
           ...........}
           ]
        },


       {
          "menuId" : 34,
          "menuName": "Dinner", 
           .........{
          },
         "menuItems": [
          {
          "itemName": "Sweepstakes Entry",
                "category": "Entree",
           },
           {
          "itemName": "Veggie Breakfast Burrito",
                "category": "Entree",
           },
           {
          "itemName": "Sm. Fountain Drink",
                "category": "Drink",
           },
           {
          "itemName": "Med. Fountain Drink",
                "category": "Drink",
           },
           ...........
           ]
         ]
     }

'这是我的代码,用于在没有类别'

的单个窗口中打印所有项目名称
     var json = JSON.parse(this.responseText);
    for (var i = 0; i < json.menus.length; i++) {

        for (var j = 0; j < json.menus[i].menuitems[j].lenght; j++) {  

            var row = Ti.UI.createTableViewRow({
                height: 60,
            });

            var itemLabel = Ti.UI.createLabel({
                text: json.menus[i].menuItems[j].menuItems.itemName, 
                height: 'auto',
                left:54,
                top: 5,
                font:{ fontSize:20 } 
            });

            row.add(itemLabel);
            data.push(row);

       }
    }

    tableview.setData(data);

1 个答案:

答案 0 :(得分:0)

你在第二个for循环中有一个拼写错误。

 for (var j = 0; j < json.menus[i].menuitems[j].lenght; j++) { 

 for (var j = 0; j < json.menus[i].menuitems[j].length; j++) {