dhtmlxTree分類樹增加右鍵菜單以及拖拽排序的實現方法_PHP教程

來源:互聯網
上載者:User
在以前的一個公司內部管理系統(InnerOA)中,對於分類樹的構造我採用的是dTree,實現無限級目錄顯示及右鍵菜單功能(右鍵菜單中包括:建立、修改、共用、刪除、重新整理等功能,如所示)

關於公司內部管理系統(InnerOA)中分類樹的一些知識以後有時間將整理並提供源碼。

但是dTree唯一遺憾的是不支援拖拽排序功能,這讓我在完成InnerOA之後心裡一直糾結的問題。在網上查看關於分類樹的一些內容,dTree是我目前認為最符合我項目的一個。在一個偶然機會,發現了另一個強大的分類樹,也就是本文所說的:dhtmlxTree,支援拖拽功能,然而在源碼中並沒有找到類似DEMO或功能,僅發現提供一個啟用拖拽參數,不過,這也讓我決心解決分類樹的拖拽排序問題,於是花了點時間研究了一下源碼和結合dTree項目所總結的經驗,終於實現我的需求:可自由拖拽排序、移植dTree的右鍵菜單功能,並實現在所選目錄上按右鍵並快顯功能表,可以目前的目錄為基礎,進行如下操作:

1、在該目錄下建立目錄

2、修改目前的目錄名稱

3、刪除目前的目錄

4、重新整理頁面

5、可增加其它功能,比如“共用”。我在公司內部管理系統(InnerOA)中是以windows作業系統的共用為原型,設定“自讀共用”或“可寫共用”,並可指定對某使用者(或多使用者甚至全部使用者)共用。這樣只有設定共用的使用者,才可看到共用的內容。

由於無法線上示範,下面用幾個圖說明一下(源碼下載見:http://download.csdn.net/detail/zm2714/4544616):

1、可在任意目錄上點擊右鍵,建立目錄

2、可在任意目錄上點擊右鍵,修改目前的目錄。但根目錄除外。

說明:根目錄不可修改,即圖中Books不可修改。此id值為-1。這是一個特殊ID。標誌為根目錄。

說明:其它任意目錄勻可修改。實際使用中,是存在資料庫中目錄的ID值。中“目錄ccc”的ID值為3。

說明:修改名稱後,點擊儲存,即可。

3、可拖動根目錄之外的任意目錄,拖拽排序。

拖拽排序原理:將欲選擇中目錄拖到其父目錄時,更新他的時間為目前時間。按時間DESC排序。這樣將出現在“父目錄”的第一個。迴圈此操作,可以實現排序功能。

二、代碼實現
1、引用js檔案和樣式檔案
複製代碼 代碼如下:







2、程式實現
複製代碼 代碼如下:












  • 建立

  • 修改

  • 刪除

  • 重新整理





上面源碼中的一些備註陳述式,可以在測試時恢複並可查看所需要的值。有益於理解本篇文章所述的功能並快速應用於你的實際項目中,同時歡迎交流。

對dhtmlXTree的詳細使用,就不在本篇範圍之內了。你可以參考網上關於dhtmlXTree的使用教程。

http://www.bkjia.com/PHPjc/326767.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/326767.htmlTechArticle在以前的一個公司內部管理系統(InnerOA)中,對於分類樹的構造我採用的是dTree,實現無限級目錄顯示及右鍵菜單功能(右鍵菜單中包括:...

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.