基于cookie实现zTree树刷新后展开状态不变
基于cookie实现zTree树刷新后,展开状态不变。
1、除了引用jQuery和zTree的JS外,引用cookie的JS:
<scripttype="text/javascript"src="~/Scripts/jquery-treeview/lib/jquery.cookie.js"></script>
2、JS代码:
$(function(){ //ztree设置 varsetting={ data:{ simpleData:{ enable:true, idKey:"id", pIdKey:"pId", rootPId:null } }, callback:{ onExpand:onExpand, onCollapse:onCollapse } }; $.ajax({ type:"POST", url:"/Tech/TemplateTypeManage/GetData", success:function(data){ if(data&&data.length!=0){ $.fn.zTree.init($("#tree"),setting,data); vartreeObj=$.fn.zTree.getZTreeObj("tree"); varcookie=$.cookie("z_tree"+window.location); if(cookie){ z_tree=JSON2.parse(cookie); for(vari=0;i<z_tree.length;i++){ varnode=treeObj.getNodeByParam('id',z_tree[i]) treeObj.expandNode(node,true,false) } } } } }); });//end$ functiononExpand(event,treeId,treeNode){ varcookie=$.cookie("z_tree"+window.location); varz_tree=newArray(); if(cookie){ z_tree=JSON2.parse(cookie); } if($.inArray(treeNode.id,z_tree)<0){ z_tree.push(treeNode.id); } $.cookie("z_tree"+window.location,JSON2.stringify(z_tree)) } functiononCollapse(event,treeId,treeNode){ varcookie=$.cookie("z_tree"+window.location); varz_tree=newArray(); if(cookie){ z_tree=JSON2.parse(cookie); } varindex=$.inArray(treeNode.id,z_tree); z_tree.splice(index,1); for(vari=0;i<treeNode.children.length;i++){ index=$.inArray(treeNode.children[i].id,z_tree); if(index>-1)z_tree.splice(index,1); } $.cookie("z_tree"+window.location,JSON2.stringify(z_tree)) }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。