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

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

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

    JAVA涂鴉
    關于JAVA的點點滴滴
    posts - 50,  comments - 689,  trackbacks - 0

    ?? 樹型菜單可以說是項目中應用最為廣泛的運用。以前無論使用微軟控件的樹型,還是比較優秀的阿賴樹型,都是將數據全部讀出,然后再分級顯示。這樣如果數據量大,那么第一次顯示將需要客戶等待很長一段時間,降低了客戶的體驗度。如今使用ajax,事情變得簡單了。

    ?? 此運用參考了《征服web2.0開發技術詳解》的例子。

    ???我使用的平臺是struts+spring+hibernate,但與ajax打交道的也就是struts。我無法將整個代碼貼出來,因此把重要的前臺ajax代碼貼出來,至于后臺的代碼就看你自己所使用的技術了。

    1、jsp頁面

    <% @?page?language = " java " ?contentType = " text/html;?charset=GB2312 " ? import = " java.util.*,com.wehave.oa.cecontract.model.TbJyhtflb " %>
    < html >
    < head >
    < title > Insert?title?here </ title >
    < link?rel = " stylesheet " ?href? = ? " ../css/tree.css " >??
    <script?type="text/javascript"?src="../js/tree_htfl.js"></script>
    <script?languge="javascript">
    ????function?ShowDetail(ID,NAME,FLAG)
    {
    ????????window.parent.right.location?
    ="getContract.go?method=doGetContract&folderID="?+ID?+?"&&folderName="+NAME+"&&flag="+FLAG;
    ????}

    </script>
    </head>
    <body?bgcolor="#F6F9FF">
    <tbody>
    <table?cellpadding="0"?cellspacing="0"?width="300"?>
    ?
    <div?id="load"?style="display:none">?<img?src="../images/tree_loading.gif">Loading?data..</div>
    <ul?class="tree">
    <%??List?treeList?=?(List)request.getAttribute("treefolder");
    ????Iterator?it
    =treeList.iterator();
    ????
    while(it.hasNext()){
    ????????out.println(it.next().toString());
    ????}

    %>
    </table>
    </tbody>
    </body>
    </html>

    2、tree_htfl.js 代碼
    function?showHide(?id?)
    {
    ??var?el
    =?document.getElementById(?id?);
    ??var?bExpand?
    =?true;
    ??var?images?
    =?el.getElementsByTagName("IMG");
    ??
    if?(images[0].src.indexOf("tree_minus.gif")!=-1)
    ??
    {
    ????bExpand?
    =?false;
    ????images[
    0].src="../images/tree_plus.gif";
    ??}
    else{
    ????images[
    0].src="../images/tree_minus.gif";
    ??}

    ??var?subs
    =el.lastChild;
    ??
    if(bExpand)
    ????subs.style.display
    ="block";
    ??
    else
    ????subs.style.display
    ="none";
    }


    function?getSubTree(?id?,submitURL)
    {
    ??var?submitURL
    =submitURL
    ??postXmlHttp(?submitURL,?
    'parseSubTree("'+id+'")'?,'load("'+id+'")');
    }

    function?parseSubTree(id)
    {
    ??var?el
    =?document.getElementById(?id?);
    ??var?ulElmt
    =?document.createElement("UL");
    ??ulElmt.innerHTML
    =_xmlHttpRequestObj.responseText;
    ??el.appendChild(ulElmt);
    ??var?images?
    =?el.getElementsByTagName("IMG");
    ??images[
    0].setAttribute("src",?"../images/tree_minus.gif");
    ??images[
    0].setAttribute("onclick",?new?Function("showHide('"+id+"')"));
    ??var?aTag?
    =?el.getElementsByTagName("A");
    ??aTag[
    0].setAttribute("onclick",?new?Function("showHide('"+id+"')"));
    ??var?loadDiv
    =?document.getElementById(?"load"?);
    ??loadDiv.style.display
    ="none";
    }


    function?load(id)
    {
    ?var?loadDiv
    =?document.getElementById(?"load"?);
    ?loadDiv.style.display
    ="block";
    }


    var?_postXmlHttpProcessPostChangeCallBack;
    var?_xmlHttpRequestObj;
    var?_loadingFunction;

    function?postXmlHttp(?submitUrl,?callbackFunc?,loadFunc)
    {
    ??_postXmlHttpProcessPostChangeCallBack?
    =?callbackFunc;
    ??_loadingFunction?
    =?loadFunc;
    ??
    if(window.createRequest)
    ??
    {
    ????
    try{
    ??????_xmlHttpRequestObj
    =window.createRequest();
    ??????_xmlHttpRequestObj.open(
    'POST',submitUrl,true);
    ??????_xmlHttpRequestObj.onreadystatechange
    =postXmlHttpProcessPostChange;
    ??????_xmlHttpRequestObj.send();
    ????}

    ????
    catch(ee){}
    ??}

    ??
    else?if(window.XMLHttpRequest)
    ??
    {
    ????_xmlHttpRequestObj
    =new?XMLHttpRequest();
    ????_xmlHttpRequestObj.overrideMimeType(
    'text/xml');
    ????_xmlHttpRequestObj.open(
    'POST',submitUrl,true);
    ????_xmlHttpRequestObj.onreadystatechange
    =postXmlHttpProcessPostChange;
    ????_xmlHttpRequestObj.send(
    "");
    ??}

    ??
    else?if(window.ActiveXObject)
    ??
    {
    ????_xmlHttpRequestObj
    =new?ActiveXObject("Microsoft.XMLHTTP");
    ????_xmlHttpRequestObj.open(
    'POST',submitUrl,true);
    ????_xmlHttpRequestObj.onreadystatechange
    =postXmlHttpProcessPostChange;
    ????_xmlHttpRequestObj.send();
    ??}

    }
    ;

    function?postXmlHttpProcessPostChange(?)
    {
    ??
    if(?_xmlHttpRequestObj.readyState==4)
    ??
    {
    ??????
    if(_xmlHttpRequestObj.status==200){
    ????????setTimeout(?_postXmlHttpProcessPostChangeCallBack,?
    2?);
    ????}
    else{
    ????????alert(_xmlHttpRequestObj.status);
    ????}

    ??}

    ??
    if?(?_xmlHttpRequestObj.readyState==1?)
    ??
    {
    ????setTimeout(?_loadingFunction,?
    2?);
    ??}

    }

    3、action代碼

    /**
    ?????*?展開第一層目錄
    ?????
    */

    ????
    public?ActionForward?doGetFolderList(
    ????????????ActionMapping?mapping,
    ????????????ActionForm?form,
    ????????????HttpServletRequest?req,
    ????????????HttpServletResponse?res)
    {
    ????????List?list?
    =?treeCatalogService.getChildren("0");
    ????????List?TreeFolder
    =new?ArrayList();
    ????????Iterator?it
    =list.iterator();
    ????????
    while(it.hasNext()){
    ????????????TbJyhtflb?htfl
    =(TbJyhtflb)it.next();
    ????????????String?s
    =treeCatalogService.renderTreeViewAjax(htfl);
    ????????????TreeFolder.add(s);
    ????????}

    ????????req.setAttribute(
    "treefolder",TreeFolder);
    ????????
    return?mapping.findForward("foldertree");
    ????}

    ????
    ????
    /**
    ?????*?展開下級目錄
    ?????
    */

    ????
    public?ActionForward?doGetSubFolderList(
    ????????????ActionMapping?mapping,
    ????????????ActionForm?form,
    ????????????HttpServletRequest?req,
    ????????????HttpServletResponse?res)
    {
    ????????String?parentID?
    =?req.getParameter("parentID");?//獲得id的值
    ????????if?(parentID!=null&&!parentID.equals("")){?//如果不為null和空
    ????????????res.setContentType("text/html;charset=GB2312");
    ????????????List?list?
    =?treeCatalogService.getChildren(parentID);
    ????????????Iterator?it
    =list.iterator();
    ????????????
    try?{
    ????????????????PrintWriter?out
    =?res.getWriter();
    ????????????????
    while(it.hasNext()){
    ????????????????????TbJyhtflb?htfl
    =(TbJyhtflb)it.next();
    ????????????????????out.println(treeCatalogService.renderTreeViewAjax(htfl));
    ????????????????}

    ????????????????out.close();
    ????????????}
    catch(Exception?e){
    ????????????????e.printStackTrace();
    ????????????}

    ????????}

    ????????
    return?null;
    ????}

    4、service層代碼
    /**
    ?????*?函數說明:展開目錄
    ?????*?參數說明:?目錄對象
    ?????*?返回值:展開目錄的HTML代碼
    ?????
    */

    ????
    public?String?renderTreeViewAjax(TbJyhtflb?htfl)?{
    ????????StringBuffer?content?
    =?new?StringBuffer();
    ????????String?ID
    =htfl.getTbJyhtflbZlId();
    ????????String?NAME
    =htfl.getTbJyhtflbMc();
    ????????String?FLAG
    =htfl.getTbJyhtflbLb();
    ????????content.append(
    "<li?id='"+ID+"'>");
    ????????
    if?(treeCatalogDAO.canExpand(ID))
    ????????????content.append(
    "<img?src=../images/tree_plus.gif?onClick=\"getSubTree('"+ID+"')\">");
    ????????
    else
    ????????????content.append(
    "<img?src=../images/tree_blank.gif>");
    ????????content.append(
    "<img?src=../images/tree_folder.gif><a?href=\"javascript:ShowDetail('"+ID+"','"+NAME+"','"+FLAG+"')\"");
    ????????
    if?(treeCatalogDAO.canExpand(ID)){
    ????????????String?submitURL
    ="getFolderList.go?method=doGetSubFolderList&parentID="+ID;
    ????????????content.append(
    "?onClick=\"getSubTree('"+ID+"',submitURL)\"");
    ????????}

    ????????content.append(
    ">"+NAME+"</a>");
    ????????
    ????????content.append(
    "</li>");
    ????????
    return?content.toString();
    ????}

    5、tree.css代碼:
    ????p{
    ????????font
    -family:arial;
    ????????
    ????}

    ????a
    {
    ????????color:#
    000;
    ????????font
    -family:arial;
    ????????font
    -size:0.8em;
    ????}

    ????
    ????.tree
    {
    ????????margin:0px;
    ????????padding:0px;
    ????}

    ????.tree?ul
    {????/*子結點*/
    ????????margin
    -left:20px;????/*?Left?spacing?*/
    ????????padding
    -left:0px;
    ????}

    ????.tree?li
    {????/*?結點?*/?
    ????????list
    -style-type:none;
    ????????vertical
    -align:middle;
    ????????
    ????}

    ????.tree?li?a
    {????/*?結點連接?*/
    ????????color:#
    000;
    ????????text
    -decoration:none;
    ????????font
    -family:arial;
    ????????font
    -size:0.8em;
    ????????padding
    -left:2px;
    ????}

    代碼基本就是這樣了,希望對大家有用。
    posted on 2006-07-24 10:03 千山鳥飛絕 閱讀(13863) 評論(54)  編輯  收藏 所屬分類: Ajax

    FeedBack:
    # re: 運用ajax技術的樹型菜單
    2006-07-24 12:41 | cctv
    能共享一下源文件嗎?li98311@etang.com非常感謝  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-07-24 13:03 | Shooper.Java
    # re: 運用ajax技術的樹型菜單
    2006-07-26 16:07 | inber
    希望能看一下你的展示程序,如果可能能發份代碼嗎:)
    inber520@yahoo.com.cn  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-07-26 17:58 | Vycon
    可以發給我一份源代碼嗎?多謝了!

    vycon@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-07-27 09:05 | 千山鳥飛絕
    不知道大家需要的源碼是什么,是《征服》里源碼嗎?

    因為我這是項目中的代碼,所以不可能是一個很完整的可以直接copy下來就運行的,但我還是將最重要的代碼給貼出來了。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-07-31 14:54 | 呵呵
    可否把tree.css的代碼發上來?謝謝  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-07-31 16:37 | zJun's帛羅閣
    是怎么構造樹的呢?是在tree_ajax.js和tree_htfl.js中嗎?哪里可以找到這兩個文件呢,這兩個文件所有的內容就是文章中提供的js文件的內容嗎?最好能提供這兩個文件的代碼?,F在這樣看有點摸不著頭腦。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-08-01 09:14 | 千山鳥飛絕
    我重新修改了一下,提交了tree.css代碼。
    另外tree_ajax.js是不需要的,我已經刪除。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-08-15 11:10 | 新新人類
    把你代碼能否共享一下,謝謝

    wuxj888@yahoo.com.cn  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-08-16 10:48 | ccyy
    ccyy978@126.com
    謝謝樓主  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-08-31 04:05 | 糊里糊涂啊糊里糊涂
    感謝,研究下先

    service層代碼 里邊包含了太多的 html 了吧?這樣想要修改下樣式還要對service里邊動刀,感覺不太妥當!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-09-04 15:34 | dingqf
    dingqf@sttri.com.cn
    謝謝摟住,我要生成個5k個節點的樹!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-09-07 13:14 | kerbs
    ajax沒推出之前,也用過這樣顯示,這樣顯示的問題是點擊展開菜單的時候,如數據量大用戶還是要等一段時間。
    而全部讀出分級顯示只是第一次等待而已,以后則很快。各有利弊吧  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-09-13 13:37 | 千山鳥飛絕
    這樣顯示的問題是點擊展開菜單的時候,如數據量大用戶還是要等一段時間。
    ================================
    這是數據量相當大才會出現這種情況。如果一個子目錄下都有這么多信息,那么整個目錄一起讀取將會等待多久呢。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-09-13 13:38 | 千山鳥飛絕
    service層代碼 里邊包含了太多的 html 了吧?這樣想要修改下樣式還要對service里邊動刀,感覺不太妥當!
    =============================
    確實是這樣,希望大家共同研究。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-10-07 10:10 | 哈哈哈
    《征》作者原來是images[0].setAttribute("onclick", "showHide('"+id+"')")這樣寫的,是不對的。

    應該是images[0].setAttribute("onclick", new Function("showHide('"+id+"')"))。

    以上大家注意了  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-10-08 14:39 | 千山鳥飛絕
    @哈哈哈

    《征》所用的方法適合firefox這類瀏覽器。而如果要兼容IE瀏覽器就必須new Function了。

      回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-11-24 13:22 | 213123
    123123123  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2006-12-21 11:16 | cory
    能否發一下源碼  qq522540@gmail.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-01-28 11:06 |
    可否發一封給我啊,wangguan_xd@126.com。先謝過了!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2007-03-23 08:18 | 幽幽
    樓主,可否也給我一份代碼,樹的

    謝謝了

    aprilsuny@163.com 非常感謝!希望你能看到  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-03-24 09:06 | 千山鳥飛絕
    因為這是寫在項目中的代碼,所以無法給大家。

    等下次那天有空,做個單獨的DEMO,讓大家下載。

    我的這個樹是參考了《征服web2.0開發技術詳解》書中的例子。大家也可以去看看這本書。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-06-05 11:36 | jick
    這個還不錯,謝了。不過有沒更先進一點的啊。
    如果有,幫忙發過來。yinhui.java@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-06-08 13:58 | 天路
    謝謝,學習中

    wfjvip@126.com

    請共享一份。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-06-12 11:32 | 臥石荷花
    好東西,樓主分享一份
    hehua513@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-06-12 11:32 | 臥石荷花
    謝謝  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-08-14 15:14 | pn2007
    能否發一份源碼?謝謝! sailsoft@tom.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2007-08-28 14:48 | java愛好者
    樓主,
    能否給我發一份源代碼呀?
    我很需要那,,,,,
    希望能得到你的回復,,,,
    先謝謝了。。。。。。
    我的郵箱:wfj587@126.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-10-01 14:19 | 守望者
    迫切希望樓主能整理下,共享下!謝謝
    zhouliming-521@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2007-10-19 16:26 | jacky
    請發到我郵箱來 frank18@126.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-10-19 18:07 | 創世紀計算機
    這種很不錯,現在已經出來好幾種了,各有所長~  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-10-21 16:03 | rjw
    我也迫切需要 可以的話發我一份 rennuoting@126.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-11-18 16:09 | jon
    我也需要 可以的話發我一份 joney_110@163.com   回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2007-12-09 19:28 | 獵人
    能給我發一份源代碼嗎?謝謝了
    nxzn2008@hotmail.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-02-06 21:00 |
    請問一下要把《征服》的代碼放到IE下為什么就不能使用動態樹了呢?我已經加了new Function()了,但是還是只能在firefox下使用,而不能在IE下使用,請問大家有沒有碰到這種情況的 ???謝謝指教一下。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-02-06 21:02 |
    在這里主要是不理解:String submitURL="getFolderList.go?method=doGetSubFolderList&parentID="+ID;
    這一句,在征服里面用的是treeview?parentID+ID,但是在整個war文件里面沒有看到treeview為名的文件。勞煩各位幫幫忙解決一下。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-03-13 09:31 | satanc
    function postXmlHttp( submitUrl, callbackFunc ,loadFunc)
    {
    _postXmlHttpProcessPostChangeCallBack = callbackFunc;
    _loadingFunction = loadFunc;
    if(window.createRequest)
    {
    try{
    _xmlHttpRequestObj=window.createRequest();
    _xmlHttpRequestObj.open('POST',submitUrl,true);
    _xmlHttpRequestObj.onreadystatechange=postXmlHttpProcessPostChange;
    _xmlHttpRequestObj.send();
    }
    catch(ee){}
    }
    else if(window.XMLHttpRequest)
    {
    _xmlHttpRequestObj=new XMLHttpRequest();
    _xmlHttpRequestObj.overrideMimeType('text/xml');
    _xmlHttpRequestObj.open('POST',submitUrl,true);
    _xmlHttpRequestObj.onreadystatechange=postXmlHttpProcessPostChange;
    _xmlHttpRequestObj.send("");
    }
    else if(window.ActiveXObject)
    {
    _xmlHttpRequestObj=new ActiveXObject("Microsoft.XMLHTTP");
    _xmlHttpRequestObj.open('POST',submitUrl,true);
    _xmlHttpRequestObj.onreadystatechange=postXmlHttpProcessPostChange;
    _xmlHttpRequestObj.send();
    }
    };

    函數中沒有增加對瀏覽器的判斷,比如在IE7下樹就打不開,  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-03-13 15:22 | 千山鳥飛絕
    @satanc
    ajax對ie7的兼容性確實不好。

    這個樹形,我已經改為適合ie7的結構了。下次更新一下。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-05-05 10:29 | hz
    摟主能不能給我發一份有關jsp樹型菜單的源碼啊,不勝感謝?。?!
    boy_33@163.com
    謝謝了?。?!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-05-10 22:56 | bbq
    樓主能把實現整個樹型菜單的代碼發給我嗎,小弟感激不盡!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-05-10 22:57 | bbq
    樓主能把實現整個樹型菜單的代碼發給我嗎,小弟感激不盡!
    bbqlove2008@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-05-28 11:14 | nevi
    學習中,樓主能把實現整個樹型菜單的代碼發給我嗎?感激不盡! 郵箱是:somethingtodo@163.com,謝謝了。  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-06-12 08:05 | xieamao
    能否給我也發一份源代碼,感激不盡。
    郵箱:xpf7622@hotmail.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-06-23 14:30 | luoyexian
    能否也給我一分源碼.非常感謝e-mail:luoyexian@163.com
      回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-06-24 15:55 | luoyexian
    請問這段代碼是怎么理解?我看不懂.可以解析下嗎?
    兩個if是不是重疊了?
    if (treeCatalogDAO.canExpand(ID))
    content.append("<img src=../images/tree_plus.gif onClick=\"getSubTree('"+ID+"')\">");
    else
    content.append("<img src=../images/tree_blank.gif>");
    content.append("<img src=../images/tree_folder.gif><a href=\"javascript:ShowDetail('"+ID+"','"+NAME+"','"+FLAG+"')\"");
    if (treeCatalogDAO.canExpand(ID)){
    String submitURL="getFolderList.go?method=doGetSubFolderList&parentID="+ID;
    content.append(" onClick=\"getSubTree('"+ID+"',submitURL)\"");
    }
    content.append(">"+NAME+"</a>");
      回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-07-15 16:20 | Cherry
    能否也給我一分源碼.非常感謝e-mail:cherryxiangyi@gmail.com
    我嘗試自己做,可是還有一些部分不明白,所以希望能看看你的源碼加以研究,謝謝
      回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-09-13 19:00 | chip
    能否也給我一分源碼.非常感謝e-mail:aixroot@163.com
      回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2008-11-23 20:31 | 孫利超
    能不能也給我一份那?
    非常感謝 slchao123@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2009-03-08 15:24 | echo
    能不能給我發一份,我的郵箱是psyche19830113@163.com
    謝謝!  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2009-03-19 23:24 | wade
    調試了一下,下面這個方法有點錯誤:
    ==================================================
    /** *//**
    * 函數說明:展開目錄
    * 參數說明: 目錄對象
    * 返回值:展開目錄的HTML代碼
    */
    public String renderTreeViewAjax(TbJyhtflb htfl) {
    StringBuffer content = new StringBuffer();
    String ID=htfl.getTbJyhtflbZlId();
    String NAME=htfl.getTbJyhtflbMc();
    String FLAG=htfl.getTbJyhtflbLb();
    content.append("<li id='"+ID+"'>");
    if (treeCatalogDAO.canExpand(ID))
    content.append("<img src=../images/tree_plus.gif onClick=\"getSubTree('"+ID+"')\">");
    else
    content.append("<img src=../images/tree_blank.gif>");
    content.append("<img src=../images/tree_folder.gif><a href=\"javascript:ShowDetail('"+ID+"','"+NAME+"','"+FLAG+"')\"");
    if (treeCatalogDAO.canExpand(ID)){
    String submitURL="getFolderList.go?method=doGetSubFolderList&parentID="+ID;
    content.append(" onClick=\"getSubTree('"+ID+"',submitURL)\"");
    }
    content.append(">"+NAME+"</a>");

    content.append("</li>");
    return content.toString();
    }
    ==============================================
    正確的寫法是:

    /** *//**
    * 函數說明:展開目錄
    * 參數說明: 目錄對象
    * 返回值:展開目錄的HTML代碼
    */
    public String renderTreeViewAjax(TbJyhtflb htfl) {
    StringBuffer content = new StringBuffer();
    String ID=htfl.getTbJyhtflbZlId();
    String NAME=htfl.getTbJyhtflbMc();
    String FLAG=htfl.getTbJyhtflbLb();
    content.append("<li id='"+ID+"'>");
    if (treeCatalogDAO.canExpand(ID)) {
    String submitURL="getFolderList.go?method=doGetSubFolderList&parentID="+ID;
    content.append("<img src=../images/tree_plus.gif onClick=\"getSubTree('"+ID+"','"+submitURL+"')\">");
    }
    else {
    content.append("<img src=../images/tree_blank.gif>");
    }
    content.append("<img src=../images/tree_folder.gif><a href=\"javascript:ShowDetail('"+ID+"','"+NAME+"','"+FLAG+"')\"");

    content.append(">"+NAME+"</a>");

    content.append("</li>");
    return content.toString();
    }  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2009-03-20 10:03 | wade
    要代碼的到這里下:
    http://wei-jing.javaeye.com/blog/351995  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單
    2009-04-13 18:01 | 謝華鋒
    你好能發一份程序代碼給我嗎? 太謝謝了````郵箱地址xiehuafeng880530@163.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2009-07-31 17:14 | a
    mmh_hudy@126.com  回復  更多評論
      
    # re: 運用ajax技術的樹型菜單[未登錄]
    2011-08-29 13:32 | justin
    能發一份源代碼給我嗎?謝謝樓主~bxiong@hp.com  回復  更多評論
      
    正在閱讀:



    <2008年3月>
    2425262728291
    2345678
    9101112131415
    16171819202122
    23242526272829
    303112345

    常用鏈接

    留言簿(35)

    隨筆檔案

    文章分類

    文章檔案

    好友的blog

    我的其他blog

    老婆的Blog

    搜索

    •  

    積分與排名

    • 積分 - 775111
    • 排名 - 56

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国产美国国产综合一区二区| 伊人久久精品亚洲午夜| 亚洲一区在线免费观看| 免费A级毛片在线播放| 亚洲视频一区在线观看| 4399影视免费观看高清直播| 777亚洲精品乱码久久久久久| 99精品视频在线观看免费专区| 亚洲日本一区二区三区| 中文字幕无码播放免费| 亚洲精品456人成在线| 日本不卡视频免费| 免费一级全黄少妇性色生活片 | 亚洲综合色在线观看亚洲| 一级成人生活片免费看| 亚洲免费人成在线视频观看| 国产成人一区二区三区视频免费| 亚洲麻豆精品果冻传媒| 猫咪社区免费资源在线观看| 亚洲精品人成网线在线播放va| 免费不卡中文字幕在线| 免费看一区二区三区四区| 亚洲宅男永久在线| 免费鲁丝片一级在线观看| 免费精品视频在线| 久久精品国产亚洲AV麻豆网站 | 波多野结衣在线免费视频| 亚洲人成网亚洲欧洲无码| 国产午夜亚洲不卡| 91大神免费观看| 男女猛烈xx00免费视频试看| 国产AV无码专区亚洲A∨毛片| 精品久久久久久久久免费影院| 国产成人综合亚洲| 久久精品国产亚洲AV无码娇色| 国产男女猛烈无遮档免费视频网站| 精品一区二区三区免费视频| 亚洲大香人伊一本线| 亚洲精品tv久久久久| 国产成人精品久久免费动漫| 日韩在线视频播放免费视频完整版|