<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Keep Moving

    一個人倘若需要從思想中得到快樂,那么他的第一個欲望就是學習。
    隨筆 - 16, 文章 - 10, 評論 - 1, 引用 - 0
    數據加載中……

    S2SH整合下的動態樹(非Ajax)

      Dtree是個非常簡單易用的JS類庫,封裝了JS對樹型結構的一些復雜操作,其簡單易用的API能使新手順利的完成動態樹,下載地址為:http://destroydrop.com/javascripts/tree/
      本文結合Struts2.X,Spring2.0,Hibernate3.0整合使用,數據庫為簡單起見使用MySQL,表結構的設計是根據Dtree的結構來的,Dtree基本數據字段如下:
    id Number Unique identity number.
    pid Number Number refering to the parent node. The value for the root node has to be -1.
    name String Text label for the node.
    url String Url for the node.
    title String Title for the node.
    target String Target for the node.
    icon String Image file to use as the icon. Uses default if not specified.
    iconOpen String Image file to use as the open icon. Uses default if not specified.
    open Boolean Is the node open.

    SQL腳本如下:
    create database exercise;
    use database exercise;
    create table dtreedemo01(
       id 
    varchar(50primary key,
       pid 
    varchar(50),
       name 
    varchar(50),
       url  
    varchar(50),
       title 
    varchar(50),
       target 
    varchar(50),
       icon 
    varchar(50),
       iconopen 
    varchar(50),
       opened 
    varchar(50)
    );


    insert into dtreedemo01 values('0','-1','Root','javascript: void(0);',null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('00','0','音樂','javascript: void(0);',null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0001','00','輕金屬',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0002','00','重金屬',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0003','00','R&B',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('01','0','體育','javascript: void(0);',null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0101','01','籃球',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0102','01','足球',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0103','01','體操',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('02','0','美食','javascript: void(0);',null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0201','02','中國菜',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('020101','0201','青椒找肉',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0202','02','日本菜',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('020201','0202','河夫烤魚',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('0203','02','法國菜',null,null,null,NULL,NULL,NULL);
    insert into dtreedemo01 values('020301','0203','爆炒蝸牛',null,null,null,NULL,NULL,NULL);

    接下來就是三個框架的整合了,因為此文只是介紹一下Dtree的使用,所以整合的細節就不說了,直接看展示頁面的代碼.
    <%@ page language="java" import="java.util.*" pageEncoding="gbk"%>
    <%@taglib prefix="s" uri="/struts-tags"%>
    <html>
        
    <head>
            
    <title>DynaTreeDemo</title>
            
    <link rel="StyleSheet" href="css/dtree.css" type="text/css" />
            
    <script type="text/javascript" src="js/dtree.js"></script>
        
    </head>
        
    <body>
            
    <table width="180">
                
    <tr>
                    
    <td height="300" valign="top">
                        
                        
    <script type="text/javascript">
                                tree 
    = new dTree('tree');
                            tree.config.folderLinks
    =false;
                            tree.config.useCookies
    =false;
                             
    <s:iterator value="#request.treeList">
                            tree.add(
    "<s:property  value="id"/>",
                                
    "<s:property  value="pid" />",
                                
    "<s:property  value="name" />",
                                
    "<s:property  value="url" />",
                                
    "<s:property  value="title" />",
                                
    "<s:property  value="targer" />",
                                
    "<s:property  value="icon" />");
                             
    </s:iterator>
                              document.write(tree);    
                            
    </script>

                    
    </td>
                
    </tr>
            
    </table>
        
    </body>
    </html>
    上文中的treeList為在后端控制器獲取到的數據,在JSP頁面中使用Struts2標簽迭代集合實現javascript與S2的交互。
    效果如圖:

    這種實現方法的一個缺點是,當有大量的數據時也是一次性查詢出來傳遞到Dtree封裝好的遞歸方法中,影響效率.
    去除了S2SH的Jar,下載地址:http://www.tkk7.com/Files/Mars/dtreedemo.rar

    posted on 2009-05-29 13:32 BruceLeey 閱讀(428) 評論(1)  編輯  收藏 所屬分類: 動態樹

    評論

    # re: S2SH整合下的動態樹(非Ajax)  回復  更多評論   

    找了這么多,只有你這個我實現了,真心的感謝您,您真帥
    2012-10-02 21:36 | 趙厚寶

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲AV成人无码久久WWW| 亚洲AV人无码激艳猛片| 亚洲综合国产成人丁香五月激情| 国产无遮挡裸体免费视频在线观看| 亚洲 另类 无码 在线| 日韩一级片免费观看| 亚洲国产精品无码久久青草| 尤物视频在线免费观看| 免费h成人黄漫画嘿咻破解版| 国产亚洲蜜芽精品久久| 亚洲欧洲精品成人久久奇米网| 一区在线免费观看| 国产AV无码专区亚洲AV漫画 | a一级毛片免费高清在线| 亚洲欧洲日产国码高潮αv| 99re8这里有精品热视频免费| 亚洲AV无码码潮喷在线观看| 91精品国产免费久久国语麻豆| 亚洲午夜精品一区二区公牛电影院| 无限动漫网在线观看免费| 亚洲国产高清国产拍精品| 又粗又硬又大又爽免费视频播放| 国产精品免费观看视频| 亚洲AV第一页国产精品| 人妻视频一区二区三区免费| 国产亚洲精品国产福利在线观看| 亚洲日韩欧洲乱码AV夜夜摸| 免费A级毛片无码专区| 亚洲欧美日韩中文无线码 | 国产大片线上免费看| 美女无遮挡拍拍拍免费视频| 亚洲综合一区二区| 国产成人在线免费观看| 国内精品免费久久影院| 亚洲一区在线视频观看| 国产亚洲精品AA片在线观看不加载 | 四虎影视成人永久免费观看视频| 亚洲精品456人成在线| 国产偷国产偷亚洲高清日韩 | 精品国产日韩亚洲一区在线| 亚洲色中文字幕无码AV|