0

我创建了一个树,当单击节点时将子节点附加到树节点。最初,在加载树时,我向每个节点添加了一个虚拟子节点,以便在节点旁边可以看到一个文件夹图标和箭头,以指示它有一些子节点,当用户单击该节点时,虚拟子节点将替换为节点调用 load 函数返回

我使用以下代码将子节点附加到树节点

 listeners: {
   'render': function(tp){

            tp.getSelectionModel().on('selectionchange', function(tree, node){

            tp.getLoader().dataUrl = '/zport/clusterSysReg?args='+node.attributes.name;
            tp.getLoader().load(node);
            ...................... 
            ......................
            }
}

到目前为止,一切都运行良好,但是添加虚拟节点会产生问题——当用户单击箭头时,节点会展开并且用户会看到虚拟节点。箭头的默认行为是展开节点。是否可以修改此行为,以便当用户单击箭头时调用load(node)函数并且用户可以看到树节点的实际子节点

谢谢,

4

1 回答 1

0

我想通了............像这样在'beforeexpandnode'事件中调用加载(节点)函数............

listeners: {
    'beforeexpandnode' : function(node,event){
         tree.getLoader().dataUrl = '/zport/clusterSysReg?args='+node.attributes.name;
         tree.getLoader().load(node);
         ..................
         ....................
     }
},
于 2012-08-13T15:33:26.053 回答