1

我调用 root.appendChild() 将几个子节点添加到树形面板根并调用 root.expand() 来展开树,但是直到我单击标题上的任何排序按钮后子节点才显示。我需要设置任何属性来以编程方式显示子节点吗?

感谢帮助。

以下是代码:

        tree.getRootNode().removeAll();

        var root = tree.setRootNode({
            PRTNUM:'root',
            id: 'treeRoot',
            leaf: false
        });

        for (var i = 0; i < result.data.length; i++) {
            var rec = result.data[i];
            var node = root.appendChild({
                PRTNUM: rec.PRTNUM,
                DESC: rec.DESC,   
                icon: this.convertTypeToIcon(rec.TYPE),
                id: rec.PRTNUM,
                leaf: true

            });
        }


        root.expand();
4

2 回答 2

2

由于您的根节点最初没有子节点,因此它被标记为叶子。我发现以下内容适用于最初为叶子的父节点,您必须以编程方式添加节点:

parentNode.set("leaf", false);  //must be set to work properly
parentNode.appendChild(newChild);
parentNode.expand();
于 2012-10-31T01:32:41.597 回答
1

我发现在调用 appendChild() 后添加以下行修复了“树网格”直到单击“排序”列按钮才展开。谢谢。

        root.expandChildren(true);

        root.sort(function() {});
于 2012-10-31T18:20:27.887 回答