2

我为我的应用程序使用了一个简单的树形面板,有时它会停止扩展和取消扩展节点并出现下一个错误:

records[i] is undefined
http://localhost:8080/extjs/ext-all-debug.js
Line 58763

我的代码很简单:

var tree_store = Ext.create('Ext.data.TreeStore', {
    id: 'tree_store_id',
    proxy: {
        type: 'ajax',
        url: 'tree_data.json?object_id=' + Ext.getCmp('object_id').value
    },
    root: {
        text: 'Парки',
        id: 'objectId',
        expanded: true,
        iconCls: 'tree-cls-root'
    }
});

var tree = Ext.create('Ext.tree.Panel', {
    id: 'stock_tree_id',
    store: tree_store,
    autoWidth: true,
    height: 600,
    autoScroll: true,
    renderTo: document.getElementById('stock_tree_div'),
    useArrows: true,
    border: false,
    rootVisible: true,
    listeners: {
        itemclick: function (view, rec, item, index, eventObj) {
            document.getElementById("stock_div").innerHTML = rec.data.text;
        }
    }
});

有没有人遇到过这个问题?

4

2 回答 2

1

可能是您的 JSON 有问题。它是否包括以下内容:

"leaf" : "true",
"expanded" : "true"

?

于 2011-08-12T12:23:47.570 回答
0

在我的情况下,这是由于服务器响应 json 包含父节点作为第一个元素这一事实引起的。因此,当我扩展节点 123 时,服务器返回节点 123 本身,然后返回它的所有子节点。

于 2012-07-31T11:05:19.513 回答