From d74b495736f0c04522ec54274b70fed0ded2878d Mon Sep 17 00:00:00 2001
From: zhongrj <646384940@qq.com>
Date: Tue, 27 Jun 2023 11:30:06 +0800
Subject: [PATCH] 任务新增导出
---
public/map/lib/zTree_v3/demo/cn/super/asyncForAll.html | 191 +++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 191 insertions(+), 0 deletions(-)
diff --git a/public/map/lib/zTree_v3/demo/cn/super/asyncForAll.html b/public/map/lib/zTree_v3/demo/cn/super/asyncForAll.html
new file mode 100644
index 0000000..d5aa2d1
--- /dev/null
+++ b/public/map/lib/zTree_v3/demo/cn/super/asyncForAll.html
@@ -0,0 +1,191 @@
+<!DOCTYPE html>
+<HTML>
+<HEAD>
+ <TITLE> ZTREE DEMO - async for All</TITLE>
+ <meta http-equiv="content-type" content="text/html; charset=UTF-8">
+ <link rel="stylesheet" href="../../../css/demo.css" type="text/css">
+ <link rel="stylesheet" href="../../../css/zTreeStyle/zTreeStyle.css" type="text/css">
+ <script type="text/javascript" src="../../../js/jquery-1.4.4.min.js"></script>
+ <script type="text/javascript" src="../../../js/jquery.ztree.core.js"></script>
+ <!--<script type="text/javascript" src="../../../js/jquery.ztree.excheck.js"></script>
+ <script type="text/javascript" src="../../../js/jquery.ztree.exedit.js"></script>-->
+ <SCRIPT type="text/javascript">
+ <!--
+ var demoMsg = {
+ async:"正在进行异步加载,请等一会儿再点击...",
+ expandAllOver: "全部展开完毕",
+ asyncAllOver: "后台异步加载完毕",
+ asyncAll: "已经异步加载完毕,不再重新加载",
+ expandAll: "已经异步加载完毕,使用 expandAll 方法"
+ }
+ var setting = {
+ async: {
+ enable: true,
+ url:"../asyncData/getNodes.php",
+ autoParam:["id", "name=n", "level=lv"],
+ otherParam:{"otherParam":"zTreeAsyncTest"},
+ dataFilter: filter,
+ type: "get"
+ },
+ callback: {
+ beforeAsync: beforeAsync,
+ onAsyncSuccess: onAsyncSuccess,
+ onAsyncError: onAsyncError
+ }
+ };
+
+ function filter(treeId, parentNode, childNodes) {
+ if (!childNodes) return null;
+ for (var i=0, l=childNodes.length; i<l; i++) {
+ childNodes[i].name = childNodes[i].name.replace(/\.n/g, '.');
+ }
+ return childNodes;
+ }
+
+ function beforeAsync() {
+ curAsyncCount++;
+ }
+
+ function onAsyncSuccess(event, treeId, treeNode, msg) {
+ curAsyncCount--;
+ if (curStatus == "expand") {
+ expandNodes(treeNode.children);
+ } else if (curStatus == "async") {
+ asyncNodes(treeNode.children);
+ }
+
+ if (curAsyncCount <= 0) {
+ if (curStatus != "init" && curStatus != "") {
+ $("#demoMsg").text((curStatus == "expand") ? demoMsg.expandAllOver : demoMsg.asyncAllOver);
+ asyncForAll = true;
+ }
+ curStatus = "";
+ }
+ }
+
+ function onAsyncError(event, treeId, treeNode, XMLHttpRequest, textStatus, errorThrown) {
+ curAsyncCount--;
+
+ if (curAsyncCount <= 0) {
+ curStatus = "";
+ if (treeNode!=null) asyncForAll = true;
+ }
+ }
+
+ var curStatus = "init", curAsyncCount = 0, asyncForAll = false,
+ goAsync = false;
+ function expandAll() {
+ if (!check()) {
+ return;
+ }
+ var zTree = $.fn.zTree.getZTreeObj("treeDemo");
+ if (asyncForAll) {
+ $("#demoMsg").text(demoMsg.expandAll);
+ zTree.expandAll(true);
+ } else {
+ expandNodes(zTree.getNodes());
+ if (!goAsync) {
+ $("#demoMsg").text(demoMsg.expandAll);
+ curStatus = "";
+ }
+ }
+ }
+ function expandNodes(nodes) {
+ if (!nodes) return;
+ curStatus = "expand";
+ var zTree = $.fn.zTree.getZTreeObj("treeDemo");
+ for (var i=0, l=nodes.length; i<l; i++) {
+ zTree.expandNode(nodes[i], true, false, false);
+ if (nodes[i].isParent && nodes[i].zAsync) {
+ expandNodes(nodes[i].children);
+ } else {
+ goAsync = true;
+ }
+ }
+ }
+
+ function asyncAll() {
+ if (!check()) {
+ return;
+ }
+ var zTree = $.fn.zTree.getZTreeObj("treeDemo");
+ if (asyncForAll) {
+ $("#demoMsg").text(demoMsg.asyncAll);
+ } else {
+ asyncNodes(zTree.getNodes());
+ if (!goAsync) {
+ $("#demoMsg").text(demoMsg.asyncAll);
+ curStatus = "";
+ }
+ }
+ }
+ function asyncNodes(nodes) {
+ if (!nodes) return;
+ curStatus = "async";
+ var zTree = $.fn.zTree.getZTreeObj("treeDemo");
+ for (var i=0, l=nodes.length; i<l; i++) {
+ if (nodes[i].isParent && nodes[i].zAsync) {
+ asyncNodes(nodes[i].children);
+ } else {
+ goAsync = true;
+ zTree.reAsyncChildNodes(nodes[i], "refresh", true);
+ }
+ }
+ }
+
+ function reset() {
+ if (!check()) {
+ return;
+ }
+ asyncForAll = false;
+ goAsync = false;
+ $("#demoMsg").text("");
+ $.fn.zTree.init($("#treeDemo"), setting);
+ }
+
+ function check() {
+ if (curAsyncCount > 0) {
+ $("#demoMsg").text(demoMsg.async);
+ return false;
+ }
+ return true;
+ }
+
+ $(document).ready(function(){
+ $.fn.zTree.init($("#treeDemo"), setting);
+ $("#expandAllBtn").bind("click", expandAll);
+ $("#asyncAllBtn").bind("click", asyncAll);
+ $("#resetBtn").bind("click", reset);
+ });
+ //-->
+ </SCRIPT>
+</HEAD>
+
+<BODY>
+<h1>异步加载模式下全部展开</h1>
+<h6>[ 文件路径: super/asyncForAll.html ]</h6>
+<div class="content_wrap">
+ <div class="zTreeDemoBackground left">
+ <ul id="treeDemo" class="ztree"></ul>
+ </div>
+ <div class="right">
+ <ul class="info">
+ <li class="title"><h2>实现方法说明</h2>
+ <ul class="list">
+ <li>利用 onAsyncSuccess / onAsyncError 回调函数 和 reAsyncChildNodes 或 expandNode 方法可以实现全部功能。</li>
+ <li class="highlight_red">如果父节点数量很大,请注意利用延时进行控制,避免异步进程过多。</li>
+ <li class="highlight_red">建议:演示时请利用调试工具查看 network 的 ajax 加载过程。</li>
+ <li>演示操作
+ <br/><br/>
+ [ <a id="expandAllBtn" href="#" onclick="return false;">全部展开</a> ]
+ [ <a id="asyncAllBtn" href="#" onclick="return false;">后台自动全部加载</a> ]<br/><br/>
+ [ <a id="resetBtn" href="#" onclick="return false;">Reset zTree</a> ]<br/><br/>
+ <p class="highlight_red" id="demoMsg"></p>
+ </li>
+ </ul>
+ </li>
+ </ul>
+ </div>
+</div>
+</BODY>
+</HTML>
\ No newline at end of file
--
Gitblit v1.9.3