jQuery Tree Multiselect使用詳解
樹型權(quán)限管理插件jQuery Tree Multiselect的使用方法,具體內(nèi)容如下
1、認(rèn)識(shí)jQuery Tree Multiselect
這個(gè)插件允許用戶以樹型的形式來呈現(xiàn)列表復(fù)選框的選擇。多用于權(quán)限管理中用于分配不同的權(quán)限。使用文檔,請(qǐng)參考:https://github.com/patosai/tree-multiselect.js
2、運(yùn)行環(huán)境
2.1、需要引入jquery.v1.8+版本和jquery ui.js 2.2、只能在IE8以上的版本中運(yùn)行
3、效果圖展示:
給角色分配權(quán)限中,操作欄中有兩個(gè)按鈕:修改和授權(quán)

點(diǎn)擊授權(quán)按鈕,效果如圖:
直觀的菜單呈現(xiàn):

右邊帶有選項(xiàng)標(biāo)識(shí):

4、使用方法及參數(shù)描述
4.1、初始化方法:$("select").treeMultiselect();4.2、選擇屬性名稱使用:

selected:當(dāng)給option添加selected屬性時(shí),即<option value="monitor_index" selected>首頁(yè)</option>,改復(fù)選框默認(rèn)為選擇狀態(tài);
data-section:即當(dāng)給option添加data-section屬性時(shí),展現(xiàn)父子層次關(guān)系:
'<option value="monitor_index" data-section="旅游管理" data-description="首頁(yè)描述" selected>首頁(yè)</option>' + '<option value="manage_logs" data-section="旅游管理" data-description="用戶日志描述" selected>用戶信息</option>' + '<option value="interface_logs" data-section="旅游管理" data-description="接口調(diào)用日志描述" selected>酒店信息</option>' + '<option value="abnormal_logs" data-section="旅游管理">出行信息</option>' + '<option value="empty_logs" data-section="旅游管理">景點(diǎn)信息</option>'
data-description:即當(dāng)給option添加data-description屬性時(shí),在復(fù)選框后面會(huì)有一個(gè)問號(hào)形式的圖標(biāo),鼠標(biāo)放上去,展示描述信息,如圖:

data-index:即當(dāng)給option添加data-index屬性時(shí),主要用于顯示option選項(xiàng)的順序,最直觀的的表現(xiàn)可在右邊的div區(qū)域內(nèi)觀察。
通過設(shè)置 “首頁(yè)”:data-index = 3, "用戶信息":data-index = 2,"酒店信息":data-index = 1,右邊的排序如圖:
同時(shí)會(huì)讓option變?yōu)檫x中狀態(tài)。

此外,通過設(shè)置data-section="接口測(cè)試/接口應(yīng)用/接口篩選",可以設(shè)置多層次的展現(xiàn)效果,如圖:

4.3、參數(shù)詳解
params為一個(gè)對(duì)象,你可以通過給treeMultiselect(params)添加不同的參數(shù),來實(shí)現(xiàn)不同的效果:
使用方法如:$("#authorifyselect").treeMultiselect({ searchable: true, startCollapsed: false });
其中參數(shù):searchable、collapsible、hideSidePanel、onChange、startCollapsed較為常用和重要,其他參數(shù)用戶可以根據(jù)自己需求添加。

allowBatchSelection:用于父菜單復(fù)選框的顯示和隱藏。默認(rèn)為true時(shí),父菜單前出現(xiàn)復(fù)選框,右側(cè)出現(xiàn)詳細(xì)選中列表;如圖:

設(shè)置為false時(shí),父菜單前沒有復(fù)選框,如圖:

collapsible:用于設(shè)置父菜單的展開和伸縮。
默認(rèn)為true時(shí),父菜單前出現(xiàn)小橫線,即可以伸縮;如圖:

設(shè)置為false時(shí),父菜單前沒有小橫線,即不可以伸縮;如圖:

enableSelectAll,支持任何選項(xiàng)的選擇;默認(rèn)為false;
設(shè)置為true時(shí),出現(xiàn)“Select All”和“Unselect All”選項(xiàng),可實(shí)現(xiàn)全選和全不選功能,如圖:

selectAllText,當(dāng)enableSelectAll可用時(shí),可選中所有;
unselectAllText,當(dāng)enableSelectAll可用時(shí),可不選中所有;
freeze,默認(rèn)為false,表示對(duì)選項(xiàng)禁用選擇;設(shè)置為true時(shí),效果如圖:

hideSidePanel:用戶隱藏右邊的選項(xiàng)面板;默認(rèn)為false,表示不隱藏;設(shè)置為true時(shí),即隱藏;
onChange:默認(rèn)為null,表示選擇選項(xiàng)時(shí)觸發(fā)的回調(diào)函數(shù);默認(rèn)包含四個(gè)參數(shù)(text:屬性文本,value:值,initialIndex,section)
$("#authorifyselect").treeMultiselect({ onChange: function(text, value, initialIndex, section) {
console.log(text);
console.log(value);
console.log(initialIndex);
console.log(section);
} });
當(dāng)我點(diǎn)擊某個(gè)選項(xiàng)時(shí),輸出結(jié)果如圖:

即text會(huì)輸出所有選中的復(fù)選框的信息;value會(huì)輸出你當(dāng)時(shí)點(diǎn)擊的那個(gè)復(fù)選框的信息;這里initialIndex和section的值為空。
onlyBatchSelection:只進(jìn)行部分檢查,只能設(shè)置為false.
sortable:默認(rèn)為false,設(shè)置為true時(shí),選擇的選項(xiàng)可以通過拖動(dòng)排序(需要jQuery UI);
searchable,默認(rèn)為false,設(shè)置為true時(shí),菜單頂部會(huì)出現(xiàn)搜索框,用于快捷搜索菜單。效果如圖:

searchParams: ['value', 'text', 'description', 'section'],用于設(shè)置搜索設(shè)置項(xiàng)。
sectionDelimiter:意思是data-section="value1/value2/value3",可以通過“/”來分隔值,實(shí)現(xiàn)多層列表效果。
showSectionOnSelected:默認(rèn)為true,當(dāng)選中選項(xiàng)時(shí),顯示section name;
startCollapsed:默認(rèn)為false,設(shè)置為true時(shí),菜單默認(rèn)進(jìn)來顯示為折疊效果,如圖:

總結(jié):當(dāng)你在開發(fā)用戶權(quán)限管理的后臺(tái)系統(tǒng)時(shí),你不妨選擇這個(gè)插件用于權(quán)限的分配。小巧且簡(jiǎn)單。
代碼下載地址為:jQuery Tree Multiselect
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- jQuery EasyUI API 中文文檔 - Tree樹使用介紹
- jQuery EasyUI API 中文文檔 - TreeGrid 樹表格使用介紹
- 推薦8款jQuery輕量級(jí)樹形Tree插件
- jquery zTree異步加載簡(jiǎn)單實(shí)例分享
- jquery easyui中treegrid用法的簡(jiǎn)單實(shí)例
- Jquery樹插件zTree用法入門教程
- jquery ztree實(shí)現(xiàn)下拉樹形框使用到了json數(shù)據(jù)
- jQuery EasyUI API 中文文檔 - ComboTree組合樹
- JQuery Easyui Tree的oncheck事件實(shí)現(xiàn)代碼
- jsTree樹控件(基于jQuery, 超強(qiáng)悍)[推薦]
相關(guān)文章
jQuery實(shí)現(xiàn)的checkbox級(jí)聯(lián)選擇下拉菜單效果示例
這篇文章主要介紹了jQuery實(shí)現(xiàn)的checkbox級(jí)聯(lián)選擇下拉菜單效果,涉及jQuery鼠標(biāo)事件響應(yīng)及表格table動(dòng)態(tài)操作的相關(guān)技巧,需要的朋友可以參考下2016-12-12
jquery實(shí)現(xiàn)簡(jiǎn)單每周輪換的日歷
這篇文章主要為大家詳細(xì)介紹了jquery實(shí)現(xiàn)簡(jiǎn)單每周輪換的日歷,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-09-09
poshytip 基于jquery的 插件 主要用于顯示微博人的圖像和鼠標(biāo)提示等
分享一個(gè)jquery插件-主要用于顯示微博人的圖像和鼠標(biāo)提示等poshytip2012-10-10
jquery toolbar與網(wǎng)頁(yè)浮動(dòng)工具條具體實(shí)現(xiàn)代碼
toolbar 網(wǎng)頁(yè)浮動(dòng)工具條非常實(shí)用的一個(gè)功能,下面為大家介紹下使用jquery如何快速做到2014-01-01
jquery實(shí)現(xiàn)漂亮的二級(jí)下拉菜單代碼
這篇文章主要介紹了jquery實(shí)現(xiàn)漂亮的二級(jí)下拉菜單代碼,涉及jquery鼠標(biāo)click事件控制頁(yè)面class屬性動(dòng)態(tài)變換效果的切換技巧,非常美觀實(shí)用,需要的朋友可以參考下2015-08-08
jQuery學(xué)習(xí)筆記 更改jQuery對(duì)象
jQuery提供了一些方法,使流程變?yōu)樯蒵Query對(duì)象A,操作jQuery對(duì)象A;更改為jQuery對(duì)象B,操作jQuery對(duì)象B2012-09-09

