我使用Dynatree (http://wwwendt.de/tech/dynatree/index.html)创建了一个树形导航菜单。树有四个层次:公司、组、用户和计算机。树中的每个对象都是可选择的(选择对象将打开显示该对象属性的页面),每个对象都可以有子对象,除了第4级对象("计算机")。
现在我已经尝试根据文档中的说明使树惰性加载:http://wwwendt.de/tech/dynatree/doc/dynatree-doc.html#lazyLoading从后台加载的第一级内容有isLazy选项设置为true,我已经添加了onLazyRead回调到树。
我需要从树:第一层总是加载的,但用[+]字符扩展第一层对象会扩展第一层对象,并在后台加载底层对象(组,用户,计算机)。加载树在某种意义上是有效的,我可以看到第一级元素,但问题是
- 当节点没有任何子节点时,不显示[+]符号
- 如果节点有子节点,则不执行onLazyRead事件
这看起来像是一个第22条军规,因为如果没有子节点,似乎就没有使节点可扩展的选项,因此不可能使树惰性加载。我错过了什么?
如果您的服务器交付延迟加载的节点,您必须将node.isLazy
属性设置为true