一、JStree的简单介绍
1.关于jstree

jsTree 使用了 jQuery 和 Sarissa,是一个是免费的但是设置灵活的,基于 JavaScript 跨浏览器支持的网页树形部件。

jsTree 支持三种数据源头:

预先定义好的 HTML -嵌套的列表结构

JSON

XML

jsTree 的主要功能有:

同步导入 – 只需要提供一个 URL,就会去请求数据(只适合 JSON 和 XML 数据形式)。

支持打开,关闭,重命名,创建,删除节点(通过预先定义好的规则)

支持多种回调函数(onchange, oncreate, ondelete, onload, 等等)

支持拖拉

支持多重选择

支持多种语言

支持主题(可以修改图标,大小和背景等等)

可以支持动态打开和关闭(configurable)

可选的快捷键导航

支持多个树形部件

另外还可以做为 jQuery 插件。

官方主页:http://www.jstree.com/

jstree在goolge code上的托管项目:

http://code.google.com/p/jstree/

二、JStree的简单用法

代码部分

HTML:

 <!--树-->
引入的css:
<link rel="stylesheet" type="text/css" href="/pcs9000/lib/common-css/css/style.min.css" />
<div class="reason_list">
<div id="treeview1" class="treeview"> </div>
</div>

JS:

需要引入的js有

<script src="/pcs9000/lib/jquery/jquery.js"></script>
<script src="/pcs9000/lib/common-css/js/jstree.min.js"></script>
<script src="/pcs9000/gzdsy/monitor/resources/js/treepanel.js"></script>

treepanel.js:

$(function () {
var treeDate; //存放数据
$.ajax({
type:"get",
url:"resources/js/getJson.json",
dataType:"json",
success:function(data){
treeDate = data.data.treeData[0];
$("#treeview1").jstree({ //创建树开始
'core' : {
"multiple" : false,
'data': treeDate,
'dblclick_toggle': false //禁用tree的双击展开
},
"plugins" : ["search"]
});
}
}); //tree change时事件
$('#treeview1').on("changed.jstree", function (e, item) {
$(this).find(".jstree-leaf .jstree-anchor").unbind("click").on("click",function(){
nodeId = item.node.id;
$("#AjaxLoading").remove();
$.ajax({
type:"get",
url:"resources/js/getJson.json",
dataType:"json",
beforeSend: function(XMLHttpRequest){
ShowLoading();
},
success:function(data){
},
complete: function(XMLHttpRequest, textStatus) {
$("#AjaxLoading").remove();
},
error:function(){
alert("加载数据失败!");
} });
}); });
//加载动画
function ShowLoading(){
$(".rightIntent").append('<div id="AjaxLoading" class="showbox">'+
'<div class="loadingWord">'+
'<img src="resources/img/waiting.gif">加载中,请稍候...</div></div>');
} //jstree单击事件
$("#treeview1").bind("select_node.jstree", function (e, data) {
if(data.node.id !=1 ){ //排除第一个节点
data.instance.toggle_node(data.node); //单击展开下面的节点
} });
//输入框输入定时自动搜索
var to = false;
$('#search_ay').keyup(function () {
if(to) {
clearTimeout(to);
}
to = setTimeout(function () {
$('#treeview1').jstree(true).search($('#search_ay').val());
}, 250);
}); });

三:换肤功能

JsTree的更多相关文章

  1. jsTree简单应用Demo

    <!DOCTYPE html> <html> <head> <meta name="viewport" content="wid ...

  2. JSTREE 实现AJAX重载入时刷新所有节点树

      $().ready(function() { var tree = $('#tree'); tree.jstree({ 'core': { data: null } }); $("#xr ...

  3. 【笔记】jstree插件的基本使用

    官网地址:https://www.jstree.com/ json返回参数格式:推荐第二种方式 不需要在重新拼接返回格式 不刷新页面重新初始化 jstree时使用:$.jstree.destroy() ...

  4. 【JSTREE】 复选框默认选中【总结】

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  5. JavaScript JsTree实例

    var RightTree= function () { }; RightTree.prototype = { //初始化权限树 InitRightTree: function () { $.ajax ...

  6. JsTree实现简单的CRUD

    现在需要将省市县区域这块搞成树状图的形状,由于项目使用的AngularJS+ABP+WebAPI各个模块之间数据传输形式是json格式,那么对于JsTree来说就方便很多了,只需要将json数据搞成我 ...

  7. 基于jstree的 对混乱的 命名系统进行归类的 计算机软件

    本人现在就职于一家加拿大东部餐饮连锁公司的IT部门,公司旗下有4个品牌,280多家餐厅. 所有的餐厅都使用maitred 的pos软件来处理收银结账. 公司总部使用business object 对m ...

  8. 基于Metronic的Bootstrap开发框架经验总结(2)--列表分页处理和插件JSTree的使用

    在上篇<基于Metronic的Bootstrap开发框架经验总结(1)-框架总览及菜单模块的处理>介绍了Bootstrap开发框架的一些基础性概括,包括总体界面效果,以及布局.菜单等内容, ...

  9. 利用jstree插件轻松构建树应用

    最近完成了项目中的一个树状应用,第一次接触了jstree这个插件,总的来说它的官方文档还是比较详细的,但是在使用过程中还是出现了一些问题,下面我就来谈谈这款插件的使用和心得. 首先项目需要构建一棵树, ...

  10. jstree动态生成树

    前篇文章简单介绍了静态生成树,这篇文章将通过后台把数据通过json形式传到前台,进行动态生成树. 本篇的程序所用框架为Spring MVC,可以很方便的通过controller层传json到前台. 前 ...

随机推荐

  1. 白话学习MVC(七)Action的执行一

    一.概述 在此系列开篇的时候介绍了MVC的生命周期 , 对于请求的处理,都是将相应的类的方法注册到HttpApplication事件中,通过事件的依次执行从而完成对请求的处理.对于MVC来说,请求是先 ...

  2. vim - Simple commands to remove unwanted whitespace

    http://vim.wikia.com/wiki/Remove_unwanted_spaces 1. manual commandremove trailing whitespace::%s/\s\ ...

  3. springMVC中利用model在JSTL进行回填值

    1.ringMVC中利用model回填值 后台中,利用model返回值,如 model.addAttribute("MS_info" , MS_info); 前台回填值: text ...

  4. Python 字符串方法详解

    Python 字符串方法详解 本文最初发表于赖勇浩(恋花蝶)的博客(http://blog.csdn.net/lanphaday),如蒙转载,敬请保留全文完整,切勿去除本声明和作者信息.        ...

  5. Scrum 项目1.0

     1.内容: NABCD模型  1.需求   在当今的时代,把钱存进银行确实是比较稳妥的方式,但收益实在少得可怜.因此投资便是一个比较好的方式,当然,在投资前你需要一个软件去帮你直观地显现出各种投资的 ...

  6. [原创]java WEB学习笔记99:Spring学习---Spring Bean配置:自动装配,配置bean之间的关系(继承/依赖),bean的作用域(singleton,prototype,web环境作用域),使用外部属性文件

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  7. windows系统调用 利用事件对象实现进程通信

    #include "iostream" #include "windows.h" #include "cstring" using name ...

  8. 7.$a = 'abcdef'; 请取出$a的值并打印出第一个字母

    echo $a[0]; echo $a{0}; echo chr(ord($a));//先输出$a字符串里的第一个字符的ASCII值 再从指定的 ASCII 值返回字符.

  9. 使用jquery的imagecropper插件做用户头像上传 兼容移动端

    在移动端开发的过程中,或许会遇到对图片裁剪的问题.当然遇到问题问题,不管你想什么方法都是要进行解决的,哪怕是丑点,难看点,都得去解决掉. 图片裁剪的jquery插件有很多,我也测试过很多,不过大多数都 ...

  10. uber 真是垃圾

    uber司机好几次都不认识路,态度也不好,最开始使用是因为它价格最便宜,随着滴滴/快的价格下调,已经没有再使用uber的必要,果断卸载.