前言:很多時候我們在項目中需要用到樹,有些樹僅僅是展示層級關系,有些樹是為了展示和編輯層級關系,還有些樹是為了選中項然後其他地方調用選中項。不管怎麼樣,樹控件都是很多項目裡面不可或缺的元件之一。今天,部落客打算結合自己的使用經曆和網上找到的一些不錯的樹控件在這裡做一個分享,希望能幫大家找到最合适的控件。還是那句話:控件沒有最好,隻有最合适。
全部收起

展開一級
全部展開
此控件實作起來也非常簡單,隻需要引用jQuery和bootstrap元件即可。
這些代碼都是直接從網上down下來的,節點上面的圖示可以通過樣式修改,圖示樣式也是基于bootstrap的。如果需要動态添加節點,可以自己封裝元件去拼html,實作起來應該也比較簡單。由以上可知此元件的輕量級,如果你需要對節點作增删改或者選擇等操作,不要急,下面的控件可能比較适用。
預設展開一級
點選左邊的“+”号和右邊的節點都會去展開子節點
多級展開
在左邊可以編輯節點名稱
按Enter鍵換行新增兄弟節點,同樣删除換行就可以删除節點。
按Enter鍵後再按下Tab鍵可以新增子節點
很強大有木有。稽核元素可知它使用的是html5的svg标簽來實作的,是以對浏覽器有一定的要求。
此元件可直接通過Nuget去添加。
節點全部收起
節點展開
節點選中,當然如果需要可以變成單選。
可以增删改節點
點選文本框出現樹
3.1 直接在界面顯示文本框
需要引用的js和css檔案
頁面html
Js初始化
3.2 預設隐藏,觸發某個事件的時候出現樹。這種場景在項目裡面非常常見,一般用于選擇樹節點。是以部落客把這個也單獨拿出來說下吧。
div預設是隐藏的。
在js裡面初始化樹以及注冊showMenu()方法
由于以上都是靜态資料,如果需要從背景取資料動态加載樹節點,可以去背景構造zNodes這種結構的數組即可。
以上三種樹形元件,各有千秋,可以根據需求選用不同的元件。還是那句話,沒有最好,隻有最合适,如果園友們有什麼更好用的樹形元件,不妨推薦下,不勝感激。之前那篇被指有問題,在此重新發下。如果覺得本文對你有幫助,請幫忙推薦吧,部落客會繼續努力。
本文轉自懶得安分部落格園部落格,原文連結:http://www.cnblogs.com/landeanfen/p/5124913.html,如需轉載請自行聯系原作者