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

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

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

    鄧華

    BlogJava 聯系 聚合 管理
      48 Posts :: 0 Stories :: 149 Comments :: 0 Trackbacks
    這兩天,為了實現ajax的樹形目錄,找了很多代碼. 最后確定用xloadtree.

    在xloadtree的主頁上, 有項目xtree 和xloadtree  一個是固定顯示的樹,一個是動態加載的樹.

    在他的隱藏目錄里,有一個xtree2  地址為http://webfx.eae.net/dhtml/xtree2b/  這個是正在測試的版本, 融合了xtree和xloadtree.  更新了代碼, 但還是beta版.

    xloadtree 可以在各種瀏覽器下通用. 兼容性效果非常好.

    主要的三個文件:  xtree2.js, xloadtree2.js, xtree2.css 
    xloadtree2.js 主要是對ajax方式的封裝, 實現異步調用. 顯示樹的時候,調用xtree2.js里面的代碼. xtree2.css 控制樹的顯示式樣.  在查看他的文檔的時候,主要看xtree2的文檔,這里面才有對樹怎樣進行操作. xloadtree只是個調用包裝.

    xtree2.js :
    輸出html代碼的時候, 調用的是toHtml() 方法. 在這個方法中,其中最主要的是getRowHtml() 來得到每一行的輸出.  方法中用 getExpandIconHtml() 來控制展開后圖標的代碼輸出, getIconHtml()控制未展開的圖標輸出.  getLabelHtml() 控制文本的輸出, 如果不想要圖標,就把圖標的輸出代碼屏蔽掉就OK.


    關于在頁面輸出后,看不到源代碼的調試方法:

    <br/>
    <INPUT type="button" name="ad" onclick="charge();" value="change">
    <br/>
    <TEXTAREA rows="10" cols="30" id="ttt" name="ttt"></TEXTAREA>
    <br/>
    <INPUT type="button" name="findnode" onclick="findnode();" value="findnode">
    <br/>
    <INPUT type="button" name="openpath" onclick="openpath();" value="openpath">
    <script>
        
    function charge(){
            document.getElementById('ttt').value
    =tree.getSelected().toHtml();
        }
        
        
    function findnode(){
            tree.findChildByText(document.getElementById('ttt').value,
    0);
        }
        
        
    function openpath(){
            tree.openPath(webFXTreeHandler.htmlToText(document.getElementById('ttt').value),true);
            tree.getSelected().expand();
        }
    </script>

    在頁面中放置如上代碼.  注意,先要獲得樹的句柄.  比較創建樹的時候,用如下代碼:

    var tree = new WebFXTree("<%=rootname%>");

    在展開的樹點,選擇后, 點擊change 按鈕,可以得到這個節點對應的html代碼.  然后對應html可以找到相應的CSS. 這個就不多寫了.

    xloadtree在調用子節點樹的時候,和服務器之間傳輸的是xml.
    DTD的定義如下
    <!ELEMENT tree (tree*)>
    <!ATTLIST tree
                text        CDATA    #REQUIRED
                src            CDATA    #IMPLIED
                action        CDATA    #IMPLIED
                icon        CDATA    #IMPLIED
                openIcon    CDATA    #IMPLIED
                target        CDATA    #IMPLIED
    >

    其中 text為顯示文本,  src為下級目錄目錄的地址. action為點擊的鏈接. icon為圖標,openIcon為節點打開后的圖標. target為目標,和a標簽的target用法一樣.


    因為xml 文件不能傳送< > 這種符號, 可以采用&lt; &gt; 傳送.   因為項目里需要在樹上顯示HTML代碼,所以在js里面做了修改.  修改的部分比較多. 還沒有測試有沒有意外情況. 這個以后再說.


    還有, 在使用過程中,有一個BUG. 是設置tabindex的. 會出錯.

    this.setTabIndex(this.tabIndex); 

    將xtree2.js文件中的這一行屏蔽掉就行了. 當然,先要確定你不需要使用tab鍵定位. :)


    2006- 4- 22 增加:
      在要打開指定目錄樹的時候 如果樹里面包含html代碼, 可以用如下語句
    <script>try{top.tree.tree.openPath(webFXTreeHandler.htmlToText("/北京新東方學校/<font color=red><b>留學考試</b></font>/fff"),true);}catch(err){}</script>


    2006-5-19
    前天在同事應用的時候,出現的問題是加載過程中如果樹結點為中文,就加載不上. 后來找到問題的原因是在用servlet輸出xml 的時候,是用的steam的方式, 后來改成字符輸出方式才正確. 如下.

                PrintWriter out=response.getWriter();
                out.write(outputXML.toString());
                out.flush();
                out.close();


    2008-09-03

    關于隨機參數,指的是URL請求中帶有一個隨機參數。 這個參數,可以是當前時間,或者隨機數。 用來避開瀏覽器的緩存

     

    posted on 2005-11-13 18:55 鄧華的碎碎念 閱讀(27877) 評論(113)  編輯  收藏
    評論共2頁: 1 2 下一頁 

    Feedback

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-03-30 10:16 lip199162
    <?xml version="1.0"?>
    <tree>
    <tree text="1sub" action="plist.php?mid=3&sid=6" target="main"/>
    </tree>

    這幾行XML問題出在 plist.php?mid=3&sid=6 如果我改成 plist.php?mid=3或

    plist.php?sid=6 都不會有問題

    為什么這行語句不能有 & 這個字符呀,郁悶呀,求救一下,拜托了.  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-03-31 10:38 nickey's home
    @lip199162
    那就改成&amp; 試試?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-03-31 15:48 zz
    呵呵,路過看看

    我是用一個Servlet 直接吐出數據的,只要編碼正確,都沒有問題

    想問一個問題,我樹圖是逐層加載的,當加載到最后一個節點的時候,后臺會返回空數據,xloadtree就會出現錯誤,我只好返回一個xml來表示是空節點,比較難看,如何解決?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-03-31 16:15 lip199162
    我的問題,已經解決了,真的很感謝各位,謝謝了  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-18 11:08 aaa
    有沒有誰用過這個東東,為啥非要生成一個xml 文件呢?能不能直接用從后臺獲取的xml 數據  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-20 16:31 hailang
    我想知道如何在樹上顯示html代碼,具體的js修改是哪些?
    QQ:28308402  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-22 10:42 intraweb
    在使用xloadtree生成xml文件并載入時,發現文件生成沒有問題,但是在load時,頁面有時顯示error,說什么xml document have not top leve element,我查了xml文件,結構是沒有問題的,不知道各位遇到過這種問題沒有?是不是他的bug

    具體我的步驟是將節點的src指定到一個jsp文件中,該jsp文件完成生成XML文件,并使用recpose.sendredirect到新的xml文件,不知是不是我的步驟有什么問題。我試了如果把生成文件和載入xml文件分在兩個文件中分步完成基本沒有問題。難道生成文件和載入xml要分為兩步完成嗎?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-24 16:42 nickey's home
    TO intraweb

    不應該轉發, 應該直接輸出xml.   回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-25 22:21 intraweb
    我是使用javabean進行生成xml文件的,如何直接輸出啊?難道要用servelet才行?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-04-27 15:42 minghaitang
    現在的xloadtree都是一次異步調用,再點第2次的時候就不去后臺取數據了,如何實現每次展開時都進行異步調用?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-01 18:36 wen4516
    你好,,你能否告訴我讓菜單一開始顯示的就是全展開的狀態嗎。。。。這樣顯示比較直觀  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-01 22:54 atoi
    @wen4516
    tree.expandAll();


    另外,我也有一個問題,關于動態加載的。
    我在自己的PHP程序中加載子節點。如果直接使用xtree2b演示使用的tree.xml,
    var tic = new WebFXLoadTreeItem('asdf', 'tree.xml')
    這樣可以加載沒有任何問題,但是我一旦把src參數改為php文件,不管帶不帶參數,都不能加載節點,即使我把tree.xml直接改名為tree.php都一樣,顯示的錯誤信息為:
    Error loading tree.php (200: OK)
    請問這是怎么回事?另外有沒有什么方法可以調試?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-02 11:19 wen4516
    我的菜單是與數據庫相連的我沒有定義它。顯示方式是

    <div class="dynamicMenu">
    <menu:useMenuDisplayer name="ListMenu" pository="repository">
    <menu:displayMenu name="DatabaseMenu"/>
    <menu:displayMenu name="StandaloneMenu"/>
    </menu:useMenuDisplayer>
    </div>

    怎樣才能做到進入頁面菜單以全展開的形式顯現  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-10 18:44 kind
    tree.add(new WebFXLoadTreeItem("Tree Item 2", "tree.xml", "http://www.google.com", "main", "", ""));
    為什麼我加上main就不行呢,一片空白,去掉就好了
    可是我不想把連接開在本窗口,而是想開在main窗口
    有辦法嗎?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-12 10:21 小輝
    我用的Weblogic為什么加載XML的時候老報錯呀?我直接使用靜態的demo.html也不能加載 XML,但是用Firefox就可以用了,什么原因呀  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-12 10:26 小輝
    哪位大哥幫幫忙呀
    我的問題很簡單
    我想運行demo.html文件,demo.html和Tree.xml都是下載的源文件,
    用 IE 時 加載 XML 失敗
    用 Firefox 加載 XML 成功
    放到Tomcat 使用IE中 成功
    但是放到Weblogic使用IE 失敗了
    我們的工程使用的Weblogic,什么原因呀  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-12 10:26 小輝
    哪位大哥幫幫忙呀
    我的問題很簡單
    我想運行demo.html文件,demo.html和Tree.xml都是下載的源文件,
    用 IE 時 加載 XML 失敗
    用 Firefox 加載 XML 成功
    放到Tomcat 使用IE中 成功
    但是放到Weblogic使用IE 失敗了
    我們的工程使用的Weblogic,什么原因呀  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-13 22:34 nickey
    @小輝

    xloadtree和用的什么服務器是沒有關系的.
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-14 02:31 vincent_qiutian
    @nickey
    應該沒有關系,只要客戶斷支持JavaScript好像就行了:)  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-17 21:11 aa
    寫了一個讀xml文件的方法,生成樹,怎么傳上去,想把展示圖片頁傳上去  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-18 22:02 vincent_qiutian
    你好,看了你寫的文章對我的啟發很大,但是在使用中卻遇到了些問題,希望您能夠給一些建議:
    我采用了你提供的Xloadtree,一個JSP文件在執行的時候首先在指定的目錄中生成了一個一個tree.xml文件,最后還是在這個頁面下面調用了這個tree.xml
    var atree = new WebFXLoadTree("系統權限","xmltreea.xml");
    atree.build();

    但是如果用戶刷新了本頁面后,tree.xml文件已經更新了內容,但是顯示的還是上一次沒有刷新的內容,為什么?

    還有你給出的example.htm頁面上有一個“重新加載異步樹”的按鈕調用了atree.reload()方法,但是我如果采用自己生成的XML調用這個方法IE就報錯,后來發現,如果XML文件中沒有這一行“<TreeNode text="遞歸加載" radio="true" src="tree.xml" />” 這個按鈕就不起作用,能給我解答一下嗎?

    我所需要的就是每次調入的時候,能夠都重新加載一遍XML文件,謝謝!
    我的聯絡方式:
    msn:qiutian1976@minihome.8800.org
    QQ:568670(請注明XloadTree)
    Email:qiutian1976@163.com

    希望您能夠在百忙之中抽出一些時間給與解答,謝謝!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-19 09:32 nickey's home
    @vincent_qiutian

    但是如果用戶刷新了本頁面后,tree.xml文件已經更新了內容,但是顯示的還是上一次沒有刷新的內容,為什么?

    這個情意我沒有碰到過,重新開個IE 呢? 可能跟IE的緩存有關系,在request和meta里面設一下,不緩存,應該就沒有問題了.

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-19 14:00 vincent_qiutian
    @nickey's home

    你好,雖然添加在Request和Meta上添加了禁用緩存,但是在同一個IE瀏覽器中,刷新頁面還是不好用,顯示的還是第一次load進來的信息。
    但是新開一個網頁,輸入網址卻能解決這個問題,但是實際應用中我是用這個Tree來顯示用戶的權限列表的,當第一次調入的時候顯示的是A的用戶的權限列表,當我返回后點擊B后,雖然XML文件已經更新,列表顯示的還是A的權限,
    我都郁悶了:(

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-19 19:34 nickey's home
    @vincent_qiutian
    你的xml文件沒有加吧...xml文件我也不知道怎么加...-_- 用servlet輸出下?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-20 02:54 vincent_qiutian
    @nickey's home
    總結問題如下:
    1.按照例子正確的配置了文件的路徑和XML文件的路徑,第一次打開本網頁,可以顯示正常信息,當進入同一個網頁,但是參數傳遞不同的時候,后臺已經重建了這個XML文件,但是,仍舊顯示原來的信息
    找到一個貌似可以解決的辦法,再開一個新網頁,然后輸入這個XML文件的地址,例如:http://localhost:8080/test/xmltree.xml,瀏覽器就顯示出了重建后的內容(說明,系統已經根據傳遞參數重新建立,并且文件生成正確),然后在切換到第一次打開的那個瀏覽器,這個時候刷新頁面的時候,就會顯示正確的結果了
    但這個方法不具備實用性,因為用戶不會按照你的這個麻煩的方式去操作
    2.當把IE的緩存由“自動”設置成“每次訪問頁面都檢測”,這樣雖然刷新還是顯示原有內容,但是刷新兩次后就會顯示正確內容。

    以上問題通過不同的機器和操作系統反復測試,問題依舊。


    我是用的環境是Tomcat 5 +JSP
    通過以上情況判斷,由于我的XML文件名稱從來沒有變更過(雖然內容在更新),Tomcat 緩存了我的這個XML文件,導致刷新后內容不變,但是我又找不到Tomcat怎么禁止緩存XML文件的方法,郁悶!

    我猜想的解決方式,頁面調用前,隨機生成一個XML文件名稱,然后讓xloadtree去調用,調用結束后,在頁尾刪除這個XML文件,這樣每次用戶訪問的時候是用的都是不同的XML文件,這樣可以避免Tomcat緩存已經使用過的XML文件,這個只是我的想法,有時間測試一下。  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-20 19:26 vincent_qiutian
    通過隨機生成XML文件名稱得方法解決了問題,但是Tomcat為什么緩存以前生成XML文件的問題依舊沒有解決  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-21 10:20 nickey's home
    @vincent_qiutian
    不用隨機文件名吧,加個隨機參數就行了..  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-21 15:10 vincent_qiutian
    @nickey's home
    呵呵沒有大區別了 :) 現在好用了! 謝謝你:)  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-23 22:45 wo
    @nickey's hom
    你用的是這個么?

    open ('GET', file, true);
    send ('');
    每刷新一次,
    就讀一次文件
    cache
    是么  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-05-25 10:00 絕類
    我想展開的時候對每個節點進行功能操作(例如填刪改的操作)該如何實現?
    有人做過類似的操作嗎?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-12 13:59 ancory
    我現在想通過一個jsp文件直接把xml文件的內容輸出,而不是先生成xml文件,然后在取,這樣總是提示內容為空!為什么啊,如果是servlet的情況我沒有測試,另外通過一個javabean輸出xml文件也應該可以吧?有人通過應用jsp文件成功了嗎?這個jsp文件發個例子到上面看看,謝了!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-14 09:13 zz
    @ancory
    很簡單的,代碼如下
    <%@ page contentType="text/html; charset=GBK" %>
    <%@ page import="java.io.*" %>
    <%@ page import="org.jdom.*" %>
    <%@ page import="org.jdom.input.DOMBuilder" %>
    <%@ page import="org.jdom.output.*" %>
    <%
    try {
    org.jdom.Document doc = (org.jdom.Document)request.getSession().getAttribute("TreeDoc");
    response.setContentType("text/xml");
    PrintWriter outt = response.getWriter();
    XMLOutputter outer=new XMLOutputter(" ",true,"GBK");
    outt.println(outer.outputString(doc));
    }
    catch (Exception ex) {
    ex.printStackTrace();
    }
    %>  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-15 10:24 ancory
    response.setCharacterEncoding("GB2312");
    String s = (String)request.getParameter("keyID");
    String s1 = ",again";
    response.setContentType("text/xml, charset = GBK");
    response.setHeader("Cache-Control", "no-cache");
    response.setDateHeader("Expires", 0);
    out.println("<?xml version=\"1.0\" encoding=\"gb2312\"?>");
    out.println("<tree>");
    out.println(" <tree text=\"myxml1測試" + s + s1 + "\" action=\"http://webfx.eae.net\" />");
    out.println(" <tree text=\"myxml2\">");
    out.println(" <tree text=\"myxml2.1\" action=\"javascript:alert(2.1)\" />");
    out.println(" </tree>");
    out.println(" <tree text=\"myxm13\" action=\"http://webfx.eae.net\" />");
    out.println("</tree>");
    out.close();

    這樣不行嗎?不支持中文!
    org.jdom這個包我沒有找到  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-15 10:28 ancory
    PrintWriter out=response.getWriter();
    out.write(outputXML.toString());
    out.flush();
    out.close();
    這里的 outputXML是什么東西啊,我用一個StringBuffer得到xml格式的字符串,然后輸入,還是不支持中文?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-15 11:46 nickey's home
    噢. 統一用utf-8,不應該出現中文問題的.  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-19 15:53 zz
    @ancory
    我是用jdom 來解析xml 的

    如果是用Servlet來輸出數據,我設置如下
    response.setCharacterEncoding("text/xml; charset=GBK");
    ..................
    response.getWriter().println(str);//這里的str是一個xml字符,encoding="GBK"

    頁面的編碼也是"GBK"

    這里要注意Servlet的輸入格式和編碼,xml字符串的encoding,頁面的編碼  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-19 15:54 zz
    這里要注意Servlet的response的setCharacterEncoding方式,xml字符串的encoding,頁面的編碼   回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-20 14:41 ancory
    我用jsp和servlet都試過,都對中文不支持,昏了!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-21 09:48 zz
    @ancory
    :(

    是否編碼不統一? 你先把xml字符串直接在頁面上打印(servlet輸出或jsp打印)看看,如果可以正常顯示一般不會有問題

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-21 13:32 ancory
    直接打印都正常,編碼沒有問題,如果是從xml中讀取也是正常的,就是通過jsp或servlet輸出后就不正常,問題處在這里:xloadtree.js的_xmlFileLoaded(MyXmlHttp.responseXML, jsNode);
    這行代碼上,如果有中文MyXmlHttp.responseXML取到的就是空,所有總是彈出一個空提示框,難道你們和我的js文件不同?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-21 18:46 yehaoren
    如果我想修改節點的名稱,JS應該如何寫,在線等解  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-22 16:41 ancory
    @yehaoren
    這是一個動態加載樹,如果是從xml文件讀取節點,直接改xml文件的第一個字段就可以了,如果是從數據庫讀取,就不存在問題了  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-22 16:57 ancory
    現在有個問題:這個軟件是有版權的,如果在項目中使用,會不會有問題啊,怎么解決呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-23 13:39 zz
    @ancory
    responseXML的確有時候會有問題,接收的東西為空
    換成responseText試試

    這個是開源的,不會有問題  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-23 15:22 ancory
    @zz
    謝謝指點,我查資料改好了。
    現在我想問一下這個target在哪里設置,怎么設置呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-26 10:54 zz
    <?xml version="1.0" encoding="UTF-8"?>
    <tree>
    <tree id="1" text="test1" src="" action="test?type=1" toolTip="test1" target="leftframe" />
    </tree>

    是這個target么?   回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-26 12:10 ancory
    這個可以加,就是在開始的時候怎么加:
    var tree = new WebFXTree("Root");
    tree.add(new WebFXTreeItem("Tree Item 11","testxml.jsp"));
    如果這個地方要加target,怎么加啊,試了好長時間沒有成功!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-06-26 17:00 zz
    這個要修改xtree2.js文件
    添加2個方法
    //在1522行原先方法下添加
    //zz
    function WebFXTreeItem(sText, oAction,target) {
    WebFXTreeAbstractNode.call(this, sText, oAction,target);
    }
    在288 行原先方法下添加
    //zz
    function WebFXTreeAbstractNode(sText, oAction,target) {
    this.childNodes = [];
    if (sText) this.text = sText;
    if (oAction) this.action = oAction;
    if (target) this.target = target;
    this.id = webFXTreeHandler.getUniqueId();
    if (webFXTreeConfig.usePersistence) {
    this.open = webFXTreeHandler.persistenceManager.getExpanded(this);
    }
    webFXTreeHandler.addNode(this);
    }

    測試代碼:
    tree.add(new WebFXTreeItem("Tree Item 1","http://www.google.com","_about"));  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-05 15:22 xra
    請高手幫忙:  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-05 15:30 xra
    http://webfx.eae.net/dhtml/xtree2b/下載的xtree2b-20050606.zip,運行里面的xloadtreedemo.html,出錯?已經把this.setTabIndex(this.tabIndex); 去掉。提示Error loading tree.xml(0:Unknown).
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-05 16:01 xra
    奇怪了啊,為什么我運行都是這樣的錯誤啊!請大家不吝賜教啊!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-05 16:24 xra
    我剛試了下,啟動tomcat以后再運行就沒有問題,如果直接運行就會出錯,郁悶!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-19 12:00 fang
    諸位,怎樣一次展開所有節點呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-19 17:19 fang
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
    "http://www.w3.org/TR/html4/strict.dtd">

    <html>
    <head>
    <title>XTree 2 Demo</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <link type="text/css" rel="stylesheet" href="css/xtree2b/xtree2.links.css">
    <script type="text/javascript" src="js/xtree2b/xtree2.js"></script>

    <script type="text/javascript" src="js/xtree2b/xloadtree2.js"></script>


    </head>
    <body>

    <script type="text/javascript">
    //alert("ok");
    var tree = new WebFXLoadTree("Hello World", "tree.xml");
    tree.write();

    </script>

    </body>
    </html>

    以上代碼出現問題 WebFXLoadTree 該問題怎么跟蹤呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-19 17:20 fang
    以上代碼出現問題 'WebFXLoadTree'未定義 請問該問題怎么跟蹤呢?   回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-19 17:54 fang
    http://webfx.eae.net/dhtml/xtree2b/ 下載的東西在apache-tomcat-5.5.16下可用,而在Resin 1.2.10下不可用.

    請問這是怎么回事?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-21 17:32 fang
    請問用http://webfx.eae.net/dhtml/xtree2b/能否實現樹型結構的多選框?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-26 14:30 poplar
    @nickey's home

    怎么用隨機參數啊?
    我搞了一天也沒有搞定,我是通過servlet從數據庫中取數據,
    但數據庫數據更新了,但目錄樹怎么刷新也更新不了。
    希望每次點擊一個節點的時候能重新從數據庫中取數據。
    我用的web服務器是weblogic 8.14

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-10-12 15:52
    犯得上發射點法@lip199162
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-10-19 21:25 itwhen
    nickey 我也出現了這個問題
    var tic = new WebFXLoadTreeItem('asdf', 'tree.xml')
    這樣可以加載沒有任何問題,但是我一旦把src參數改為php文件,不管帶不帶參數,都不能加載節點,即使我把tree.xml直接改名為tree.php都一樣,顯示的錯誤信息為:
    Error loading tree.php (200: OK)
    請問這是怎么回事?
    謝謝了   回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-10-19 22:23 itwhen
    找到原因 動態返回內容前需要設置Content-Type為text/xml  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-11-23 19:01 wyq_tomorrow
    有一段時間了,為了這個頭都大了.
    我用這個控件讀取xml文件成功了,我用dom4j從數據庫中讀出文件,生成xml文件,然后進行 加載,添加子節點,刪除節點都可以,但是我在刪除最后一個節點之后,在初始化xml文件,xml文件已經變了,就是生成的樹還是空的,我把網頁關了,然后再打開就可以了,不知道原因,希望高手給與指教。  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-01-30 15:47 xief
    IE上打開就得不到MyXmlHttp.responseXML中得xml內容是怎么解決得呀?各位大俠幫幫忙呀:(  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-02-27 15:06 hshen
    把下面的語句注銷掉即可
    if (count == 0) {
    jsNode.errorText = "Error loading " +jsNode.src + " (???)";
    }  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-03-18 14:55 roroya
    我用xloadtree做了動態加載的樹,是通過servlet里把數據庫的數據調出后改寫成xloadtree定義的xml格式,然后加載的。現在有一個問題,就是,我想能不能有方法改一下xtree,讓<tree>標簽里的action屬性能夠支持兩個javascript,意思就是,現在可以寫成
    String action = "javascript:doPriCategoryAction('" + name +"')";
    能不能夠寫成兩種方法?一種是點擊節點時跳轉頁面,另外一種是鼠標滑移到某一個節點時能夠顯示一些節點信息?
    希望大家共同討論。  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-03-26 00:28 ontology
    請問怎么能在 點擊+好按鈕時候 生成需要的xml 然后再加載  回復  更多評論
      

    # 怎么刷新樹中選中的節點 2007-05-14 09:30 eboge
    作者不知道還看得到不, 看到了請回一下, 如果我選中了某個節點,怎么樣reload?我看了一下API, 好像只能刷新根節點(只有根節點有引用,其他的節點用的XML生成的,里面的都是SRC,沒有引用可用)  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-06-30 12:38 kofman
    學習:請問您的隨機參數如何設置呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-06-30 12:39 kofman
    @vincent_qiutian
    學習:請問您的隨機文件名如何設置呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-07-05 14:22 superpig
    怎么在節點上加上右鍵菜單呢?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-07-10 10:22 chen bo
    收藏了.....  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-07-13 20:33 luking
    我現在做了一個樹,有三層關系,怎么才能在頁面打開時展開樹的第二層節點的指定子節點?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-08-14 09:48 xxl
    如何用數據庫+javabean+jsp實現樹形目錄動態的增刪改操作!
    希望能向各位學習學習!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-09-19 14:04 Adair
    請問,如何能對xloadtree2實現查找功能???即,關鍵的如何能獲取一個結點的引用????大家知道嗎???  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-10-18 16:23 lynnpeng
    請問各位若使用在IE 7.0是否會有問題?我們會一直loading  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-10-22 09:19 創世紀計算機
    最新版在IE7中好像沒有問題呀,我前幾天還試了一下~  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-10-22 10:25 nickey's home
    @lynnpeng
    嗯, 沒問題, 我們最近剛用了.  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-11-13 16:54 leisure
    這兩天也在弄xloadtree,參考了樓主的一些方法,表示感謝.
    有個疑問,再次展開樹型節點時,上次選擇的節點的狀態仍然會保存,這是什么原理?為什么會這樣?這兩個js文件看得有些吃力,看來得在js上多花功夫才行  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-11-14 12:01 nickey's home
    @leisure
    對于瀏覽器中的緩存問題,有一個辦法是,在請求的URL里面加上一個Ramdom數,js里面是Math.random();比如
    var url="http://www.sohu.com/?r="+Math.random();

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹[未登錄] 2008-01-10 12:27 oscar
    nickey 你好
    我有一個問題,我現在想模仿bbs.tol24.com的網站,但在過程中遇到一個問題
    1.當初次加載頁面時左側樹可以正常顯示,也就是第一級目錄可正常顯示
    +--文學
    +--歷史
    +--科學
    2.當點擊某“一個”目錄時其下級目錄均可以正常顯示
    +--文學
    +--中國文學
    +--外國文學
    +--歷史
    +--科學
    3.以后除剛才打開的目錄外,在點擊任何目錄就一直在loading...。也就是說只能打開一個目錄,其余的都打不開

    不知道這是什么原因  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹[未登錄] 2008-01-10 12:28 oscar
    nickey 你好
    我有一個問題,我現在想模仿bbs.tol24.com的網站,但在過程中遇到一個問題
    1.當初次加載頁面時左側樹可以正常顯示,也就是第一級目錄可正常顯示
    +--文學
    +--歷史
    +--科學
    2.當點擊某“一個”目錄時其下級目錄均可以正常顯示
    ---文學
    ...+--中國文學
    ...+--外國文學
    +--歷史
    +--科學
    3.以后除剛才打開的目錄外,在點擊任何目錄就一直在loading...。也就是說只能打開一個目錄,其余的都打不開

    不知道這是什么原因  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹[未登錄] 2008-01-10 12:30 oscar
    <script type="text/javascript">
    var tree = new WebFXTree("Root","");tree.setTarget("content");

    <%
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    String sTemp = "";
    int i = 0;
    String sql;

    try{

    sql = "select id,name from thin_directory where state = 1 and id like '__' order by sortid";
    conn = dbpool.getConnection(10000);
    stmt = conn.createStatement();
    rs = stmt.executeQuery(sql);

    while(rs.next())
    {
    sTemp = "var cat" + i + "= new WebFXLoadTreeItem(\"<font color=green>" + rs.getString("name") + "</font>\"" + ",\"node.jsp?id=" + rs.getString("id") + "\");";
    //sTemp = "var cat" + i + "= new WebFXLoadTreeItem(\"<font color=green>" + rs.getString("name") + "</font>\"" + ",\"tree.xml\");";
    out.println(sTemp);
    out.println("cat" + i + ".setTarget(\"content\");");
    out.println("tree.add(" + "cat" + i + ");");
    i++;

    }
    }catch(Exception e)
    {
    out.println("left--->" + e.getMessage());
    }
    finally
    {
    stmt.close();
    rs.close();
    dbpool.freeConnection(conn);
    conn = null;
    }
    %>

    tree.write();
    tree.expand();
    </script>  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹[未登錄] 2008-01-10 12:31 oscar
    +++++node.jsp++++++++


    <%
    String id = request.getParameter("id");

    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    String sql;

    out.println("<?xml version=\"1.0\" encoding=\"gbk\"?>");
    out.println("<tree text=\"\">");

    try{

    sql = "select id,name from thin_directory where state = 1 and id like '" + id + "__' order by sortid";
    conn = dbpool.getConnection(10000);
    stmt = conn.createStatement();
    rs = stmt.executeQuery(sql);

    while(rs.next())
    {
    out.println(" <tree text=\"" + rs.getString("name") + "\" src=\"node.jsp?id=" + rs.getString("id") + "\" target=\"content\"/>");

    }
    }catch(Exception e)
    {
    out.println("node--->" + e.getMessage());
    }
    finally
    {
    stmt.close();
    rs.close();
    dbpool.freeConnection(conn);
    conn = null;
    }
    out.println("</tree>");
    out.close();

    %>
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-15 11:17 nickey's home
    @oscar
    你可以裝一個httpwatch來觀察瀏覽器發送和獲得的信息,來查看返回的內容是否正確.

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-16 11:36 cupid
    <%@page contentType="text/xml;charset=GB2312" language="java" import="java.util.*"%>
    <%@page pageEncoding="UTF-8"%>
    <%
    out.println("<?xml version=\"1.0\" encoding=\"gb2312\"?>");
    out.println("<tree>");
    out.println("<tree text=\"中華人民共和\"/>");
    out.println("<tree text=\"美國人差\"/>");
    out.println("</tree>");
    out.close();
    %>
    /////////////////////////////
    我輸入“中華人民共”奇數個漢字就出錯,怎么回事啊?謝謝
    偶數個漢字就好著呢!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-18 12:02 xpu
    現在的xloadtree都是一次異步調用,再點第2次的時候就不去后臺取數據了,如何實現每次展開時都進行異步調用? 謝謝!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-21 12:54 karlpan
    nickey 你好
    我有一個問題,是在大數據量分層加載的時候遇到,感到有些莫明其妙,請教于您!
    -root (中國)
    |---1 (北京)
    |---2 (河北)
    | |-----2.1 (唐山)
    | |-----2.2 (秦皇島)
    | |-----2.3 (石家莊)
    |---3 (山東)
    | |-----3.1 (濟南)
    | | |-----3.1.1(歷下取)
    | |-----3.2 (青島)
    | |-----3.3 (濰坊)
    我的樹有40000多條數據,是跟當前國家的行政區劃類似,當我做如下操作的時候便會有奇妙的事情發生。
    點擊3,加載數據,子樹展開,然后點擊3.1,加載數據,子樹展開,然后點擊3.1.1 觸發this.action ,合上3.1,合上3(這個時候3的action變成了root的action,之后在點擊3的時候便跟會focus在root上了,3不能被展開了)
    這個事情在root下30多個省的最后幾個發生,在前面的并不會發生,且不是必然的。我跟蹤發現handleEvent: function (e) 在處理click時e發生了不正常的變化。
    不知道您是否曾經遇到類似的問題?xloadtree在多級分層加載是否有著不穩定的問題?您對這種事情有什么建議么?
    非常感謝

      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-22 14:21 karlpan
    問題原因已經找到,是xloadtree在數據量非常大時的bug,事件響應之間的間隔時間太長!導致事件源出錯!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-01-22 16:42 xpu
    oscar 的問題怎么解決阿,請問?  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-06-09 23:22 j2sej2ee
    小輝的問題我也遇到了,在firefox下面沒有問題,在ie里面就不能加載xml文件。請問各位是怎么解決這個問題的啊  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-06-11 14:32 shengnba
    在xloadtree中加右鍵菜單,不知道那位大蝦做過啊....  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-09-03 00:10 luoyexian
    我也遇到這樣的問題.請大蝦們指點下
    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2006-07-26 14:30 poplar
    @nickey's home

    怎么用隨機參數啊?
    我搞了一天也沒有搞定,我是通過servlet從數據庫中取數據,
    但數據庫數據更新了,但目錄樹怎么刷新也更新不了。
    希望每次點擊一個節點的時候能重新從數據庫中取數據。
    我用的web服務器是weblogic 8.14
    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2007-06-30 12:38 kofman
    學習:請問您的隨機參數如何設置呢?
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-10-20 17:08 logo
    每次訪問路徑不同應該就可以了吧,比如后面加個xxx=new Date()之類的  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2008-11-16 21:41 wugang
    nickey's home您好,看了您的文章受益匪淺。
    我在使用xloadtree2的時候碰到這樣一個問題:
    1. 使用tree.add()方法時如果給節點名稱設置中文輸出就會是亂碼,但是我頁面的encoding已經是utf-8了
    2. 如果加載節點時如果生成xml文件則顯示中文為亂碼,但是使用response輸出xml不會有亂碼,response輸出我可以設定字符集為utf-8,想問的是用dom4j如何設定生成xml文檔的encoding?
    3. 我的樹操作會牽扯到新增子節點,刪除節點及移動節點的功能,是否每次操作成功后需要調用tree.reload()這個方法?我看到有個addNode的方法是否可以直接調用?
    4. 想請問一下在樹的節點不是很多(小于100)的情況下,是用生成xml文件的方法好還是直接讀數據庫從response返回的方法好?因為我的APP是使用了8臺機器做級聯的,如果一臺掛了切換另一臺而那上面的文檔和原機器xml文檔不一致那就比較討厭了
    望您可以抽空解疑,謝謝  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹[未登錄] 2008-12-30 16:17
    你好!我想問一下,怎么讀取生成的xml文件
    我在我的工程下,比如說 d:\aaa\bbb\ccc\tree.xml,xmlHttp.open("GET", sSrc, true)中的src該怎么寫?
    我查看了每次都生成tree.xml,但是xmlHttp.responseText和xmlHttp.responseXML讀取的結果都是空字符串,不是null,這個問題該怎么解決?謝謝!  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2009-01-16 15:24 fang
    我現在基本上是上面討論的情況,可是我一點思路也沒有?
    能給點指導嗎? 我的qq:313536145 ,希望能得到指導。  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2009-05-07 09:43 cag2050
    哥們,如解決,給回復啊@roroya
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2009-12-15 14:17 xiaolong
    為什么我用xloadtree的時候根目錄可以。但是生成的子節點的src都不起作用。
    如果把src拿出來單獨訪問。也是可以獲得xml文件的。
    我想請問一下為什么。可以給個解決方案嗎?好像是子節點的src字段沒有被觸發。
      回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2011-02-22 10:31 jiajunchao
    xloadtree在struts2中使用,用IE6打開報腳本錯誤,里面的類找不到,哪位大俠能幫忙解決哈  回復  更多評論
      

    # re: 分析xloadtree, 用ajax實現的動態目錄樹 2014-07-01 23:04 wuzhiwei
    需要指定返回類型
    response.setContentType("text/xml");  回復  更多評論
      

    評論共2頁: 1 2 下一頁 

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


    網站導航:
     
    主站蜘蛛池模板: 色吊丝最新永久免费观看网站 | 亚洲精品国产成人99久久| 国产高清在线精品免费软件| 99免费在线观看视频| 又长又大又粗又硬3p免费视频| 亚洲伊人久久大香线蕉结合| 久久精品7亚洲午夜a| 国产成人高清亚洲| 国产三级电影免费观看| 国产日本一线在线观看免费| 日本高清高色视频免费| 皇色在线免费视频| 女人裸身j部免费视频无遮挡| 亚洲JLZZJLZZ少妇| 亚洲伊人精品综合在合线| 亚洲精品成人av在线| 亚洲AV无码专区电影在线观看 | 人成免费在线视频| 黄色三级三级免费看| 亚洲gay片在线gv网站| 成人区精品一区二区不卡亚洲| 中文字幕亚洲综合久久| 亚洲av成人无码久久精品| 亚洲va久久久噜噜噜久久男同| 亚洲精品无码久久一线| 亚洲自偷自偷偷色无码中文| 亚洲国产一区明星换脸| 一级毛片直播亚洲| 亚洲第一视频在线观看免费| 亚洲国产综合精品中文字幕| 亚洲精品乱码久久久久久不卡| 亚洲国产成人影院播放| 亚洲精品国产高清嫩草影院| 亚洲А∨精品天堂在线| 亚洲色偷偷综合亚洲AV伊人| 亚洲欧洲一区二区三区| 亚洲精品国产精品乱码视色 | 杨幂最新免费特级毛片| 一本久久A久久免费精品不卡| 一区二区在线视频免费观看| XXX2高清在线观看免费视频|