jstree的简单使用例子

2023-10-27

最近使用到了jstree,感觉是一款灵活的、可多项定制的tree插件;

我这边使用过程记录下;

参考的jstree api网站,以及demo介绍:

https://www.jstree.com/api/#/

jstree api github:


使用中的例子介绍:

html代码:

<!-- 搜索框 -->
 <div class="search_input">
     <input type="text" id="search_ay"  /> 
     <img src="/sfytj/dist/images/icon/ss_search.png" />
  </div>

<!-- 案由列表 -->
<div class="reason_list">
  <div id="treeview1" class="treeview">

  </div>
 </div>

js代码:

1)生成jstree:

$("#treeview1").jstree({
            'core' : {
                "multiple" : false,
                'data' : ay_mssys,
                'dblclick_toggle': false          //禁用tree的双击展开
            },
            "plugins" : ["search"] 
});

var ay_mssys = 
    [
        {
	        "id": "1",
	        "text": "民事案由(2008版)",
	        "state": {
			            "opened": true,          //展示第一个层级下面的node
			            "disabled": true         //该根节点不可点击
	       			 },
	        "children": 
	        			[
				        	{
				            "id": "2",
				            "text": "人格权纠纷",
				            "children": 
				            			[
							            	{
								                "id": "3",
								                "text": "人格权纠纷",
								                "children": [
								                	{
									                    "id": "4",
									                    "text": "生命权、健康权、身体权纠纷",
									                    "children": 
									                    			[
									                    				{
													                        "id": "5",
													                        "text": "道路交通事故人身损害赔偿纠纷"
												                   		 }
												                   	]
												    }
												 ]
											}
										]
							}
						]
			}
	]

//core:整个jstree显示的核心,里面包括多种项配置:
//data: 这里是使用json格式的数据;还可以使用html或者ajax请求等
//plugins: 这个jstree引用了哪些插件
//multiple : false  不可多选

2)点击jstree的每个子项,获取该节点的text、id等信息:

//tree change时事件
$('#treeview1').on("changed.jstree", function (e, data) {
    console.log("The selected nodes are:");
    console.log(data.node.id);               //选择的node id
    console.log(data.node.text);            //选择的node text

    form_data.ay = data.node.text;
    form_data.ay_id = data.node.id;

});

//changed.jstree,jstree改变时发生的事件,类似的还有select_node.jstree等,api中有。

3)点击jstree子项,控制该节点展开、收缩等:

//jstree单击事件
$("#treeview1").bind("select_node.jstree", function (e, data) {

    if(data.node.id !=1 ){                           //排除第一个节点(2011民事案由)
        data.instance.toggle_node(data.node);        //单击展开下面的节点
    }
    
}); 

4)使用插件search搜索(jstree自带的插件):

//输入框输入定时自动搜索
var to = false;
$('#search_ay').keyup(function () {
    if(to) {
      clearTimeout(to); 
    }

    to = setTimeout(function () {
        $('#treeview1').jstree(true).search($('#search_ay').val());

    }, 250);
});





本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

jstree的简单使用例子 的相关文章

随机推荐

  • java prepare_java中prepareStatement与createStatement的区别

    首先来看两段代码 第一个使用createStatement 1 public void delete intid 2 try 3 Connection c DBUtil getConnection 4 Statement s c creat
  • Nginx之location匹配规则

    什么是location nginx就是通过拦截到的请求去对配置好的location块 location block 进行请求代理的 被代理的URL去对location后边的字符串 或正则 根据一定的规则进行匹配 然后执行对应location
  • 你是否曾质疑过DB-Engine的数据库排名?

    在谈论数据库的最新趋势时 我们习惯了参考DB Engine上所提供的排名信息 每当新的报告出来时 我们也时常看到各个媒体网站争先发布关于最新排名的分析内容 如标题所言 你是否曾质疑过DB Engine所给出的这份排名 如下是2018年3月份
  • php后台接收blob文件流,php – 我们如何访问服务器中的文件blob?

    在上传大于maxChunkSize的文件时 我们如何在服务器中单独访问每个上传的文件blob 我的问题是我需要使用后端api将上传的文件在单独的blob中转发到不同的服务器 到目前为止 看看wiki 对于1 mb的块 我在js中添加了以下内
  • Python logging将日志输出到Kafka

    Python logging用于输出Python程序运行的日志 现实中往往一个项目会部署在多台机器之上 这种情况下 为了方便对各主机运行日志进行收集 往往会使用消息队列 通过消息队列将各台机器上的日志收集并写入日志文件 本文使用Python
  • linux库概念及其编程

    分文件编程案例 好处 分文件编程思想 功能责任划分 方便调试 主程序简洁 例子 demo c include
  • 在外包做了3年,离职后成功入职字节跳动....

    最近换了份工作 当时和群里的朋友也聊过换工作的话题 他们都觉得这是一次非常冒险的行为 说我这是一次豪赌 成了会有更好的职业发展 没成可能就会出现两三年的发展断层 甚至影响职业生涯路径 一步错 步步错 我当时也仔细的考虑过了 的确有很大的风险
  • STM32标准IIC驱动

    IIC Inter Integrated Circuit 总线是一种由 PHILIPS 公司开发的两线式串行总线 用于连接 微控制器及其外围设备 也是目前很流行的通讯总线 使用IIC总线做产品能够很大程度上降低PCB的布线难度 以及布线数量
  • fio使用good blog

    Linux应用 磁盘IO读写测试工具 FIO详解 协议森林的博客 CSDN博客 fio读写测试 编译安装 常用参数 实例 结果说明 SSD测试第一神器 FIO 磁盘IO体系架构与存储解决方案 pudn com 磁盘性能指标 IOPS与吞吐量
  • DC-5靶场(一般详细)

    目录 简介 一 找IP地址 二 扫描IP端口 三 找web漏洞 文件包含 四 拿webshell 五 提权 总结 简介 dc系列靶场是比较适合新手的黑盒测试靶场 其中dc 5靶场下载连接如下 dc 5靶场下载地址 一 找IP地址 netdi
  • 蓝桥杯2013c++真题:振兴中华

    思路一 dfs暴力搜索 从我做起振兴中华分别为12345678 1 2 3 4 5 2 3 4 5 6 3 4 5 6 7 4 5 6 7 8 迷宫问题模板 dfs x y path 从 x y 深度优先搜索 if x y为终点坐标 x y
  • 静态库的生成与使用

    1 静态库的生成与使用 1 我自己写一个 c 文件 里面存放我定义的函数 1 include
  • 酷炫网页按钮,炫酷变色效果(附源码)

    酷炫网页按钮 效果如下图 目录如下 html代码如下 index html a href sunbtton a css代码 inedex css margin 0px padding 0px body
  • 【C++】封装map和set(红黑树实现)

    前言 前面 我们学习了set和map的用法 这两个容器可以完成查找 排序等操作 后来我们在学习过二叉搜索树的基础上又学习了两种特殊的二叉搜索树 AVL树和红黑树 他们俩可以是效率进一步提高 其实set和map的底层就是由红黑树封装而成的 所
  • Camunda 入门开发指南 - 1 初始化spring boot项目

    目录 Camunda Platform Initializr 代码结构 Application spring boot启动类 Camunda在spring中的配置 Camunda流程定义文件 Camunda Modeler 工作流定义 图形
  • 面试总结 - 计算机网络

    计算机网络 1 OSI 七层模型 TCP与UDP 响应状态码 OSI 模型 应用层 计算机用户 以及各种应用程序和网络之间的接口 其功能是直接向用户提供服务 完成用户希望在网络上完成的各种工作 HTTP SMTP FTP DNS 表示层 负
  • permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock

    错误 permission denied while trying to connect to the Docker daemon socket at unix var run docker sock Get http 2Fvar 2Fru
  • 基于springboot开发项目架构之Eureka

    Eureka介绍 Spring Cloud Eureka 是对Netflix公司的Eureka的二次封装 它实现了服务治理的功能 Spring Cloud Eureka提供服务端与客户端 服务端即是Eureka服务注册中心 客户端完成微服务
  • STL容器(持续更新中)

    一 string类 1 构造函数 常用的构造函数如下 构造函数原型 含义 string 默认构造函数 创建一个默认string对象 长度为0 string const string s 拷贝构造函数 用一个string对象初始化另一个str
  • jstree的简单使用例子

    最近使用到了jstree 感觉是一款灵活的 可多项定制的tree插件 我这边使用过程记录下 参考的jstree api网站 以及demo介绍 https www jstree com api jstree api github https