基于cookie实现zTree树刷新后,展开状态不变。

1、除了引用jQuery和zTree的JS外,引用cookie的JS:
<script type="text/javascript" src="~/Scripts/jquery-treeview/lib/jquery.cookie.js"></script>
2、JS代码:
$(function () {
//ztree设置
var setting = {
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);
var treeObj = $.fn.zTree.getZTreeObj("tree");
var cookie = $.cookie("z_tree" + window.location);
if (cookie) {
z_tree = JSON2.parse(cookie);
for (var i = 0; i < z_tree.length; i++) {
var node = treeObj.getNodeByParam('id', z_tree[i])
treeObj.expandNode(node, true, false)
}
}
}
}
});
});//end $
function onExpand(event, treeId, treeNode) {
var cookie = $.cookie("z_tree" + window.location);
var z_tree = new Array();
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))
}
function onCollapse(event, treeId, treeNode) {
var cookie = $.cookie("z_tree" + window.location);
var z_tree = new Array();
if (cookie) {
z_tree = JSON2.parse(cookie);
}
var index = $.inArray(treeNode.id, z_tree);
z_tree.splice(index, 1);
for (var i = 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))
}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# cookie
# zTree
# 刷新
# jQuery树控件zTree使用方法详解(一)
# jquery zTree异步加载、模糊搜索简单实例分享
# jQuery使用zTree插件实现树形菜单和异步加载
# jQuery zTree加载树形菜单功能
# Jquery zTree 树控件异步加载操作
# jquery zTree异步加载简单实例讲解
# JQuery ztree带筛选、异步加载实例讲解
# jquery ztree实现模糊搜索功能
# jquery zTree异步加载简单实例分享
# Jquery树插件zTree用法入门教程
# 大家多多
相关文章:
Python文件管理规范_工程实践说明【指导】
如何在阿里云完成域名注册与建站?
如何快速上传自定义模板至建站之星?
如何用花生壳三步快速搭建专属网站?
如何在腾讯云免费申请建站?
免费制作小说封面的网站有哪些,怎么接网站批量的封面单?
如何选择适合PHP云建站的开源框架?
如何用5美元大硬盘VPS安全高效搭建个人网站?
SQL查询语句优化的实用方法总结
安徽网站建设与外贸建站服务专业定制方案
企业网站制作费用多少,企业网站空间一般需要多大,费用是多少?
如何设置并定期更换建站之星安全管理员密码?
如何用狗爹虚拟主机快速搭建网站?
小米网站链接制作教程,请问miui新增网页链接调用服务有什么用啊?
在线教育网站制作平台,山西立德教育官网?
西安制作网站公司有哪些,西安货运司机用的最多的app或者网站是什么?
网站代码制作软件有哪些,如何生成自己网站的代码?
网站专业制作公司有哪些,做一个公司网站要多少钱?
定制建站流程解析:需求评估与SEO优化功能开发指南
如何制作一个表白网站视频,关于勇敢表白的小标题?
电视网站制作tvbox接口,云海电视怎样自定义添加电视源?
建站之星北京办公室:智能建站系统与小程序生成方案解析
XML的“混合内容”是什么 怎么用DTD或XSD定义
小视频制作网站有哪些,有什么看国内小视频的网站,求推荐?
详解jQuery停止动画——stop()方法的使用
如何快速搭建FTP站点实现文件共享?
制作网站怎么制作,*游戏网站怎么搭建?
如何在阿里云通过域名搭建网站?
建站之星代理平台如何选择最佳方案?
制作旅游网站html,怎样注册旅游网站?
如何通过智能用户系统一键生成高效建站方案?
如何破解联通资金短缺导致的基站建设难题?
开心动漫网站制作软件下载,十分开心动画为何停播?
高防服务器租用指南:配置选择与快速部署攻略
上海网站制作网站建设公司,建筑电工证网上查询系统入口?
香港服务器租用每月最低只需15元?
如何用腾讯建站主机快速创建免费网站?
西安大型网站制作公司,西安招聘网站最好的是哪个?
如何在西部数码注册域名并快速搭建网站?
网站设计制作企业有哪些,抖音官网主页怎么设置?
已有域名和空间如何搭建网站?
金*站制作公司有哪些,金华教育集团官网?
如何确认建站备案号应放置的具体位置?
网站建设设计制作营销公司南阳,如何策划设计和建设网站?
如何生成腾讯云建站专用兑换码?
东莞市网站制作公司有哪些,东莞找工作用什么网站好?
Android使用GridView实现日历的简单功能
如何在香港免费服务器上快速搭建网站?
宝塔面板创建网站无法访问?如何快速排查修复?
如何在宝塔面板创建新站点?
*请认真填写需求信息,我们会在24小时内与您取得联系。