zTree是利用 jQuery 的核心代码,实现一套能完成大部分常用功能的 Tree 插件。整个zTree的页面显示核心

代码是。

  1. <span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;">$(document).ready(function () {
  2. zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);}
  3. );
  4. </span></span>
<span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;">$(document).ready(function () {

zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);}

);

</span></span>

解释:#treeDemo是html用于显示的zTree容器。

Setting   是JavaScript脚本中用于定义树的显示结构样式。

zNodes   用于填充Setting中定义的树的数据源。

个人理解:zTree的实现就是用setting把树的模型结构定义好,然后用zNodes当数据源,把数据浇灌到这个树

结构中,最后用这个被填满的树印在html中的zTree容器中,用于显示出来。

zTree的实现思路是这样的:

1. 在HTML页面定义一个zTree容器,也就是我们所说的<div>。

  1. <span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;"><body>
  2. <form id="form1" runat="server">
  3. <div>
  4. <ul id="treeDemo" class="ztree"></ul>
  5. </div>
  6. </form>
  7. </body>
  8. </span></span>
<span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;"><body>
<form id="form1" runat="server">
<div>
<ul id="treeDemo" class="ztree"></ul>
</div>
</form>
</body>
</span></span>

2.在javascript中进行setting的配置。

简单来说就是我们想要的树的样式、事件、访问路径、有无勾选、有无连线等属性。

3. 给zNodes赋值。

zNodes是树的全部节点数据集合,采用json对象组成的数据结构

备注:当然这一切都要建立在引用了相应的js 和CSS。

zTree v3.5.21 下载地址:http://www.ztree.me/v3/demo.PHP#_101

【Demo】

  1. <span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;"><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="tree.aspx.cs" Inherits="树结构.tree" %>
  2. <!DOCTYPE html>
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head runat="server">
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  6. <title>ZtreeDemo</title>
  7. <link href="Script/zTree/css/demo.css" rel="stylesheet" />
  8. <link href="Script/zTree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" />
  9. <script src="Script/zTree/js/jquery-1.4.4.min.js"></script>
  10. <script src="Script/zTree/jquery.ztree.core-3.5.js"></script>
  11. <script language="JavaScript">
  12. //进行setting设置;
  13. var setting = {
  14. treeNodeKey: "id",               //在isSimpleData格式下,当前节点id属性
  15. treeNodeParentKey: "pId",        //在isSimpleData格式下,当前节点的父节点id属性
  16. showLine: true,                  //是否显示节点间的连线
  17. checkable: true                //每个节点上是否显示 CheckBox
  18. };
  19. //进行zNodes的设置,对它进行赋值,也可以从后台获取,为方便在这里采用直接赋值;
  20. var zNodes = [
  21. {
  22. name: "父节点1", open: true, children: [
  23. { name: "子节点1" }, { name: "子节点2" }]
  24. },
  25. {
  26. name: "父节点2", open: true, children: [
  27. { name: "子节点1" }, { name: "子节点2" }]
  28. }
  29. ];
  30. //页面加载后,将zNodes数据放到setting设置的树结构中,显示在html中id=treeDemo的容器中。
  31. $(document).ready(function () {
  32. zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
  33. });
  34. </script>
  35. </head>
  36. <body>
  37. <form id="form1" runat="server">
  38. <div>
  39. <ul id="treeDemo" class="ztree"></ul>
  40. </div>
  41. </form>
  42. </body>
  43. </html>
  44. </span></span>
<span style="font-family:Verdana;font-size:18px;"><span style="font-family:Verdana;font-size:18px;"><%@ Page Language="C#" AutoEventWireup="true" CodeBehind="tree.aspx.cs" Inherits="树结构.tree" %>

<!DOCTYPE html>

<html xmlns="http://www.w3.org/1999/xhtml">

<head runat="server">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

<title>ZtreeDemo</title>
&lt;link href="Script/zTree/css/demo.css" rel="stylesheet" /&gt;
&lt;link href="Script/zTree/css/zTreeStyle/zTreeStyle.css" rel="stylesheet" /&gt;
&lt;script src="Script/zTree/js/jquery-1.4.4.min.js"&gt;&lt;/script&gt;
&lt;script src="Script/zTree/jquery.ztree.core-3.5.js"&gt;&lt;/script&gt;
&lt;script language="JavaScript"&gt; //进行setting设置;
var setting = {
treeNodeKey: "id", //在isSimpleData格式下,当前节点id属性
treeNodeParentKey: "pId", //在isSimpleData格式下,当前节点的父节点id属性
showLine: true, //是否显示节点间的连线
checkable: true //每个节点上是否显示 CheckBox
};
//进行zNodes的设置,对它进行赋值,也可以从后台获取,为方便在这里采用直接赋值;
var zNodes = [
{
name: "父节点1", open: true, children: [
{ name: "子节点1" }, { name: "子节点2" }]
},
{
name: "父节点2", open: true, children: [
{ name: "子节点1" }, { name: "子节点2" }]
}
];
//页面加载后,将zNodes数据放到setting设置的树结构中,显示在html中id=treeDemo的容器中。
$(document).ready(function () {
zTreeObj = $.fn.zTree.init($("#treeDemo"), setting, zNodes);
});

</script>

</head>

<body>

<form id="form1" runat="server">

<div>

<ul id="treeDemo" class="ztree"></ul>

</div>

</form>

</body>

</html>

</span></span>

效果:

zTree理解和简单Demo(转)的更多相关文章

  1. Django实战(一)之简单Demo

    菜鸟教程上Django安装可供参考: 参考链接: http://www.runoob.com/django/django-install.html 菜鸟教程上如果不行的话,下面博客网址可以供参考 Li ...

  2. 设计模式之单例模式的简单demo

    /* * 设计模式之单例模式的简单demo */ class Single { /* * 创建一个本类对象. * 和get/set方法思想一样,类不能直接调用对象 * 所以用private限制权限 * ...

  3. Spring的简单demo

    ---------------------------------------- 开发一个Spring的简单Demo,具体的步骤如下: 1.构造一个maven项目 2.在maven项目的pom.xml ...

  4. 使用Spring缓存的简单Demo

    使用Spring缓存的简单Demo 1. 首先创建Maven工程,在Pom中配置 <dependency> <groupId>org.springframework</g ...

  5. Managed DirectX中的DirectShow应用(简单Demo及源码)

    阅读目录 介绍 准备工作 环境搭建 简单Demo 显示效果 其他 Demo下载 介绍 DirectX是Microsoft开发的基于Windows平台的一组API,它是为高速的实时动画渲染.交互式音乐和 ...

  6. angular实现了一个简单demo,angular-weibo-favorites

    前面必须说一段 帮客户做了一个过渡期的项目,唯一的要求就是速度,我只是会点儿基础的php,于是就用tp帮客户做了这个项目.最近和客户架构沟通,后期想把项目重新做一下,就用现在最流行的技术,暂时想的使用 ...

  7. Solr配置与简单Demo[转]

    Solr配置与简单Demo 简介: solr是基于Lucene Java搜索库的企业级全文搜索引擎,目前是apache的一个项目.它的官方网址在http://lucene.apache.org/sol ...

  8. 二维码简单Demo

    二维码简单Demo 一.视图 @{ Layout = null; } <!DOCTYPE html> <html> <head> <meta name=&qu ...

  9. android JNI 简单demo(2)它JNI demo 写

    android JNI 简单demo(2)它JNI demo 写 一.搭建Cygwin 环境:http://blog.csdn.net/androidolblog/article/details/25 ...

随机推荐

  1. Spring Boot 系列(一)快速入门

    简介 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置 ...

  2. 20170722_php_单例模式

    <?php class myClass{ private static $obj = null; private function __construc(){ } public static f ...

  3. Java--反射的逐步理解

    层层引入反射的作用 一.类类型的概念:所有类都是对象,是Class类的实例对象,这个对象我们成为该类的类类型 1.下面是一个小的test,以产生3种方式的类类型: public class test ...

  4. Centos7 安装keepalived实现高可用

    场景:尝试安装keepalived实现高可用,进而在suse环境中部署. 测试过程需要配合Nginx的相关知识:Centos7 Nginx安装 1 安装过程 问题 !!! OpenSSL is not ...

  5. android studio生成junitLibs

    apply plugin: 'com.android.application'android { compileSdkVersion 24 buildToolsVersion "25.0.0 ...

  6. 【CSS】less 学习小结

    1. less 使用 less 可直接使用浏览器解析 or  使用node 的grunt/gulp 解析成传统css . 推荐开发环境直接使用less 文件调试, 生产环境部署解析好的css 2. l ...

  7. juquery 中 size()和length的区别 以及优缺点

    size()是jQuery提供的函数,而length是属性(不带括号).jQuery提供的源代码是这样的:size: function() {return this.length;}其实也就是说,在j ...

  8. Linux 服务器如何配置网站以及绑定域名

    因为域名没有备案,国内地区不能直接域名访问.前段时间在阿里云租购了一台的香港服务器,添加子域名时解析的时发现不能添加直接解析至端口,找了些资料,发现了Nginx绑定域名的方法,在这里做个记录. 1.香 ...

  9. Java大数据人才应用领域广,就业薪酬高

    互联网创造了大数据应用的规模化环境,大数据应用成功的案例大都是在互联网上发生的, 互联网业务提供了数据,互联网企业开发了处理软件,互联网企业的创新带来了大数据应用 的活跃,没有互联网便没有今天的大数据 ...

  10. Redux源码分析之combineReducers

    Redux源码分析之基本概念 Redux源码分析之createStore Redux源码分析之bindActionCreators Redux源码分析之combineReducers Redux源码分 ...