萬盛學電腦網

 萬盛學電腦網 >> 腳本專題 >> javascript >> JQuery寫動態樹示例代碼

JQuery寫動態樹示例代碼

本文為大家介紹下使用JQuery寫的動態樹,具體實現如下,感興趣的朋友可以學習下   復制代碼 代碼如下:
// 業務類型樹
var settingOther = {
edit: {
enable: false
},
// 異步加載樹
async: {
enable: true,
url:"initCoagencyTree.action",
autoParam:["id", "name=n"],
otherParam:{"otherParam":"zTreeAsyncTest"},
dataFilter: filter
},
// 簡單數據格式
data: {
simpleData: {
enable: true
}
},
// 回調函數
callback: {
beforeClick: beforeClick,
onClick: onClick
}
};
// 鼠標事件
function beforeClick(treeId, treeNode, clickFlag) {
// 普通選中
if(clickFlag==1){
parent.document.getElementById("coagencyId").value=treeNode.id;
parent.document.getElementById("parentId").value=treeNode.pId;
parent.document.getElementById("name").value=treeNode.name;
$("#coagencyId").attr("value",treeNode.id);
$("#parentId").attr("value",treeNode.pId);
}else{
// 取消選中 把值置空
$("#coagencyId").attr("value",null);
$("#parentId").attr("value",null);
}
return (treeNode.click != false);
}
// 鼠標解除節點的方法
function onClick(event, treeId, treeNode, clickFlag) {
// 默認執行的方法 顯示節點的詳細信息
parent.showCoagencyDetail();
}
// 異步加載需要是函數
function filter(treeId, parentNode, childNodes) {
if (!childNodes) return null;
for (var i=0; i<childNodes.length; i++) {
childNodes[i].name = childNodes[i].name.replace(/.n/g, '.');
}
return childNodes;
}
// 異步加載需要是函數
function beforeAsync(treeId, treeNode) {
return treeNode ? treeNode.level < 5 : true;
}
// 初始化樹
$(document).ready(function(){
$.fn.zTree.init($("#coagencyTree"),settingOther);
});
</SCRIPT>
<!-- 樹節點id -->
<s:hidden name="coagencyForm.coagencyId" id="coagencyId"/>
<!-- 樹節點 父id -->
<s:hidden name="coagencyForm.parentId" id="parentId"/>
<div class="zTreeDemoBackground left">
<ul id="coagencyTree" class="ztree" style="height: 640px"></ul>
</div>
copyright © 萬盛學電腦網 all rights reserved