按照我个人的经验,应该分成3步:
1 从数据库取出数据,并组织成适当的数据结构(xml或者数组,也可以考虑用其它数据结构,看你的喜好了)
2 把数据传送到客户端。(xml可以用数据岛、也可以单独做一个文件。数组就麻烦点,需要在服务器端组织客户端的数组代码。如果是其它数据结构,那你就自己研究吧)
3 使用现成的树控件显示(用阿信的,meizz的,都可以的,关键是你的数据结构要符合它们的要求。)
4 最后建议:用xml的比较方便,因为它本身就是一个字符串,而所有的网络协议,最终都是在传输字符串而已。

解决方案 »

  1.   

    上面谈的是最基本的树控件的使用,如果想要更好的使用效果那么就继续看看吧:
    1 在展开时构造子树。就是在用户展开某一个结点的时候,才构造这个结点的子结点的html代码。这样可以减少页面初始化的时间,因为我们一般只要显示一个根和第一层子结点,就够了。而且有些用户不看的子结点,根本就可以不构造。
    2 按需传送数据。就是不要一下子把数据都读出来,传送到客户端,而是在用户展开某个结点的时候,再去向服务器请求数据,然后再展开。这样做的好处是在初始化的时候,可以比第一点更快,因为只要传一点点数据就可以了。缺点是每次展开新的子树,都必须访问服务器,如果网络条件不好,那就有的等了。
    3 结点的增、删、改。这里说的增删改,不仅仅是客户端的问题,还包括数据可以传回服务器,并反映到数据表中去。
    4 在2的基础上,后台传送数据。就是说初始化的时候只要传一点点数据过来,并且显示出来,以后在系统空闲的时候,可以在后台不断的请求数据,逐步使数据完全起来。这主要是克服了2的缺点,保留了2的优点。
    5 流数据压缩。传数据是很慢的,如果能够把数据压缩那就非常有好处的了。