未捕获的TypeError:无法读取未定义的Titanium属性'length'

时间:2014-03-04 05:45:15

标签: javascript json titanium titanium-mobile

我的回答是:

  {"todo":[{"todo":"Khaleeq Raza"},{"todo":"Ateeq Raza"}]} 

我的代码是:

var dataArray = [];
var client = new XMLHttpRequest();
client.open("GET", "http://192.168.10.109/read_todo_list.php", true);
client.send();
client.onreadystatechange = function() {
    json = JSON.stringify(client.response); // this converts it into JSON parsable
    var get = console.log(JSON.parse(json));

    for (var i = 0; i < get.length; i++) {
        var row = Ti.UI.createTableViewRow({
            title: get[i].todo,
            hasChild: true,
        });
        dataArray.push(row);
    }

    $.tableView.setData(dataArray);
};

我收到了这个错误:

Uncaught TypeError: Cannot read property 'length'.

如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

看起来你正试图以数组的形式访问整个JSON对象。

尝试更改此行:

for( var i=0; i<get.length; i++){

为:

for( var i=0; i<get["todo"].length; i++){

如果数据源始终可用并且格式化,则应该允许您访问。