ZtreeAsyncMasterFile(zTree大数据量分批次异步加载)
来源:互联网 发布:淘宝美工设计兼职 编辑:程序博客网 时间:2024/06/05 12:07
ZtreeAsyncMasterFile(zTree大数据量分批次异步加载)
关于后台数据存储将集中在最后一篇讲解,此处省略
<%@ Page Language="C#" MasterPageFile="~/pages/master/WebList.Master" AutoEventWireup="true" CodeBehind="ZtreeAsyncMasterFile.aspx.cs" Inherits="BF.Web.pages.MedicalTreatmentCombination.ZtreeAsyncMasterFile" %><asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceJs" runat="server"> <link href="zTree-zTree_v3-master/zTree_v3/css/demo.css" rel="stylesheet" type="text/css" /> <link href="zTree-zTree_v3-master/zTree_v3/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" type="text/css" /> <script src="zTree-zTree_v3-master/zTree_v3/js/jquery-1.4.4.min.js" type="text/javascript"></script> <script src="zTree-zTree_v3-master/zTree_v3/js/jquery.ztree.core-3.5.js" type="text/javascript"></script> <script src="zTree-zTree_v3-master/zTree_v3/js/jquery.ztree.excheck-3.5.js" type="text/javascript"></script> <script type="text/javascript"> var iconOpen = "zTree-zTree_v3-master/zTree_v3/css/zTreeStyle/img/diy/1_open.png"; //默认 加载图标 var icon = "zTree-zTree_v3-master/zTree_v3/css/zTreeStyle/img/loading.gif"; //ajax 加载图标 var setting = { isSimpleData: true, //数据是否采用简单 Array 格式,默认false treeNodeKey: "gID", //在isSimpleData格式下,当前节点id属性 treeNodeParentKey: "gPID", //在isSimpleData格式下,当前节点的父节点id属性 showLine: true, //是否显示节点间的连线 expandSpeed: "fast", isParent: "isParent", icon: { iconOpen: decodeURI("iconOpen"), iconClose: decodeURI("iconClose")//自定义图标 展开 伸缩不同【仅支持父节点】 }, check: { enable: true //开启checkbox }, callback: { onCheck: onCheck, //节点勾选 onClick: onClick, //节点单击 beforeExpand: beforeExpand, //节点展开前 onExpand: onExpand } } function onCheck(e, treeId, treeNode) { var treeObj = $.fn.zTree.getZTreeObj("treeDemo"), nodes = treeObj.getCheckedNodes(true), v = ""; for (var i = 0; i < nodes.length; i++) { v += nodes[i].name + ","; } } function beforeExpand(treeId, treeNode) {//节点展开前 var treeObj = $.fn.zTree.getZTreeObj("treeDemo"); var newNodes; //debugger; var treeULDemo = $("[id='" + treeNode.tId + "_a']").next(); if (treeULDemo != null && treeULDemo != undefined && treeULDemo.length > 0) { treeObj.updateNode(treeNode); treeObj.reAsyncChildNodes(treeNode, "refresh"); } else { startTime = new Date(); $.ajax({ async: false, //【重要】:设置false不然出不来数据 type: "post", //要用post方式 url: "ZtreeForm.aspx/GetRootByChildsID", //方法所在页面和方法名 contentType: "application/json; charset=utf-8", data: '{ gid:"' + treeNode.gID + '"}', dataType: "json", success: function (data) { //请求成功后处理函数。 var _data = $.parseJSON(data.d); newNodes = _data; //把后台封装好的简单Json格式赋给treeNodes }, error: function () {//请求失败处理函数 alert('请求失败'); }, beforeSend: function () { $("#" + treeNode.tId + "_a").children("#" + treeNode.tId + "_ico").css("background-image", "url('" + icon + "')"); //jquery子代选择器 【暂用】 //$("#" + treeNode.tId + "_ico").css("background-image", "url('" + icon + "')");//jquery ID选择器 【暂不用】 }, complete: function () { treeNode.iconOpen = iconOpen; } }); newNodes = treeObj.addNodes(treeNode, newNodes, true); //展开父节点 treeObj.updateNode(treeNode); endTime = new Date(); var usedTime = (endTime.getTime() - startTime.getTime()) / 1000; showLog("加载完毕,异步加载, 耗时:" + usedTime + " 秒"); } } function onExpand(event, treeId, treeNode) {//节点展开 var zTree = $.fn.zTree.getZTreeObj("treeDemo"); //加载指定节点 zTree.selectNode(treeNode.children[0]); } function onClick(e, treeId, treeNode) { if (treeNode.gID.toUpperCase() == '07D42700-6201-47A7-9E7F-B7D6704CD12E' || treeNode.gID.toUpperCase() == 'CA0692EB-44F9-4566-B76E-18E23E7D2E2B')//国家总局 青海省民政厅 不可选 return false; var zTree = $.fn.zTree.getZTreeObj("treeDemo"); zTree.expandNode(treeNode, null, null, null, true); } function zTreeOnDblclick(e, treeId, treeNode) { alert("gID:" + treeNode.gID + " gPID:" + treeNode.gPID + " name:" + treeNode.name); } function getTime() { var now = new Date(), h = now.getHours(), m = now.getMinutes(), s = now.getSeconds(), ms = now.getMilliseconds(); return (h + ":" + m + ":" + s + " " + ms); } function showLog(str) { var log = $("#log"); log.append("<li>" + str + "</li>"); } var startTime = 0, endTime = 0; var treeNodes; $(function () { $.ajax({ async: false, //【重要】:设置false不然出不来数据 type: "post", //要用post方式 url: "ZtreeForm.aspx/GetZtreeRootList", //方法所在页面和方法名 contentType: "application/json; charset=utf-8", dataType: "json", success: function (data) { //请求成功后处理函数。 var _data = $.parseJSON(data.d); treeNodes = _data; //把后台封装好的简单Json格式赋给treeNodes }, error: function () {//请求失败处理函数 alert('请求失败'); } }); //debugger; $.fn.zTree.init($("#treeDemo"), setting, treeNodes); //自动展开所有节点 var zTree = $.fn.zTree.getZTreeObj("treeDemo"); //加载指定节点 var node = zTree.getNodeByParam('name', '青海省民政厅', null); if (node != null) { zTree.selectNode(node); zTree.expandNode(node, true, false); //只展开当前节点下的一级节点 } }); </script></asp:Content><asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHtml" runat="server"> <div class="content_wrap"> <div class="zTreeDemoBackground left"> <ul id="treeDemo" class="ztree"> </ul> <ul id="log" class="log" style="height: 185px"> </ul> </div> </div></asp:Content>
【ZtreeAsyncMasterFile(zTree大数据量分批次异步加载)】
0 0
- ZtreeAsyncMasterFile(zTree大数据量分批次异步加载)
- ZtreeMasterFile(zTree大数据量一次性加载)
- ztree 一次性加载大数据量
- ztree异步加载全部数据,数据量过万,如何缩短加载时间
- jquery+ztree插件异步加载(二)
- zTree简单使用(异步加载)
- zTree 异步加载
- Ztree 异步加载
- zTree checkbox 异步加载
- zTree 异步加载
- ztree异步加载数据
- python ztree 异步加载
- zTree checkbox 异步加载
- 爱上MVC3~MVC+ZTree大数据异步树加载
- jquery之datatable.js与CI整合 异步加载(大数据量处理)
- jquery之datatable.js与CI整合 异步加载(大数据量处理)
- jquery zTree异步加载实例
- zTree异步加载简单demo
- [综合面试] 牛人整理分享的面试知识:操作系统、计算机网络、设计模式、Linux编程,数据结构总结(转)
- android 签名
- 用c++写的数字阅读软件!
- 获取SQLite中任意的一个行
- 关于__proto__和prototype的一些理解
- ZtreeAsyncMasterFile(zTree大数据量分批次异步加载)
- Android自动化测试(UiAutomator)简要介绍 完整版本
- hdu 1251 字典树
- JVM常量池和八种基本数据及字符串
- java深浅拷贝
- cocos2dx-3.0 : EventDispatcher
- jquery checkbox checked 第一次有效果 第二次以后就不好用了
- 《java短串的生成》
- gem 源切换(尤其是在中国,官网源有可能会有很大的问题)