無限樹Jquery插件zTree的常用功能特性總結(jié)
其實Ztree官網(wǎng)已經(jīng)有詳細的API文檔,一切以官網(wǎng)上的說明為準(zhǔn),我在此只是結(jié)合實踐總結(jié)幾條常用的ztree的功能特性.
(ztree的語法結(jié)構(gòu)是基于key-value的形式配置)
1:支持異步加載數(shù)據(jù)
語法配置:
async: {
enable: true,
url:'abc.ashx',
otherParam: { "request": "requestname" }
}
簡要說明:
enable :設(shè)置 zTree 是否開啟異步加載模式.
url:Ajax 獲取數(shù)據(jù)的 URL 地址.
otherParam:Ajax 請求提交的靜態(tài)參數(shù)鍵值對.相當(dāng)于ajax中的data參數(shù).
2:加載數(shù)據(jù)并綁定,一般都是定義數(shù)據(jù)結(jié)構(gòu)實體即model,此數(shù)據(jù)結(jié)構(gòu)要包含層級關(guān)系通常包括:ID,父ID,Name.
然后配置語法:
data: {
simpleData: {
enable: true
}
}
或者
data: {
key: {
children: "childrens",
checked: "IsChecked"
}
}
簡要說明:
simpleData:即可采用數(shù)組作為數(shù)據(jù)源綁定.此時異步加載的數(shù)據(jù)可為平行結(jié)構(gòu).
children: 指定節(jié)點數(shù)據(jù)中保存子節(jié)點數(shù)據(jù)的屬性名稱,此時異步加載的數(shù)據(jù)為樹的折疊結(jié)構(gòu);所以后端加載數(shù)據(jù)時要使用遞歸算法.
3:支持單選,復(fù)選功能
語法配置:
check: {
enable: true,
chkStyle: "checkbox",
radioType: "all"
chkboxType:{ "Y": "", "N": "" }
},
data: {
key: {
checked: "IsChecked"
}
}
簡要說明:
enable:設(shè)置 zTree 的節(jié)點上是否顯示 checkbox / radio
chkStyle:勾選框類型(checkbox 或 radio)
radioType:radio 的分組范圍
chkboxType:勾選 checkbox 對于父子節(jié)點的關(guān)聯(lián)關(guān)系
checked:為加載數(shù)據(jù)后復(fù)選框是否勾選.IsChecked為后端數(shù)據(jù)結(jié)構(gòu)model中定義的字段.
4:支持添加子節(jié)點,編輯節(jié)點,刪除節(jié)點事件
我這里介紹如何采用自定義添加,編輯,刪除按鈕的方式
語法配置:
view: {
addHoverDom: addHoverDom,
removeHoverDom: removeHoverDom
}
其中addHoverDom 函數(shù)為:
function addHoverDom(treeId, treeNode) {
var sObj = $("#" + treeNode.tId + "_span");
if ($("#addBtn_" + treeNode.id).length > 0) return;
var str= "<a id='addBtn_" + treeNode.id + "' onclick='自定義函數(shù)1(" + treeNode.DepartmentID + ")'>添加子節(jié)點</a>";
str+= "<a id='addBtn1_" + treeNode.id + "' onclick='自定義函數(shù)2(" + treeNode.DepartmentID + ")'>編輯節(jié)點</a>";
str+= "<a id='addBtn2_" + treeNode.id + "' onclick='自定義函數(shù)3(" + treeNode.DepartmentID + ")'>刪除節(jié)點</a>";
sObj.after(str);
};
其中removeHoverDom函數(shù)為:
function removeHoverDom(treeId, treeNode) {
$("#addBtn_" + treeNode.id).unbind().remove();
$("#addBtn1_" + treeNode.id).unbind().remove();
$("#addBtn2_" + treeNode.id).unbind().remove();
};
簡要說明:
addHoverDom:用于當(dāng)鼠標(biāo)移動到節(jié)點上時,顯示用戶自定義控件,顯示隱藏狀態(tài)同 zTree 內(nèi)部的編輯、刪除按鈕
removeHoverDom:用于當(dāng)鼠標(biāo)移出節(jié)點時,隱藏用戶自定義控件,顯示隱藏狀態(tài)同 zTree 內(nèi)部的編輯、刪除按鈕
相關(guān)文章
jquery ajax學(xué)習(xí)筆記2 使用XMLHttpRequest對象的responseXML
使用XMLHttpRequest對象的responseXML的方式來接受XML數(shù)據(jù)對象的DOM對象2011-10-10
jquery 輸入框查找關(guān)鍵字并提亮顏色的實例代碼
下面小編就為大家分享一篇jquery 輸入框查找關(guān)鍵字并提亮顏色的實例代碼,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01
快速移動鼠標(biāo)觸發(fā)問題及解決方法(ECharts外部調(diào)用保存為圖片操作及工作流接線mouseenter和mouseleav
這篇文章主要介紹了快速移動鼠標(biāo)所觸發(fā)的問題及解決方法(ECharts外部調(diào)用保存為圖片操作及工作流接線mouseenter和mouseleave),非常不錯,具有參考借鑒價值,需要的朋友可以參考下2016-08-08
jQuery+json實現(xiàn)的簡易Ajax調(diào)用實例
這篇文章主要介紹了jQuery+json實現(xiàn)的簡易Ajax調(diào)用,結(jié)合實例形式分析了jQuery基于ajax實現(xiàn)json傳參調(diào)用的技巧,需要的朋友可以參考下2015-12-12

