一、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. 成都app开发:架构一个App需要学会哪些技术呢?

    成都亿合科技小编为您分享: 随着APP应用的流行,越来越多的人想自己学习怎么开发APP应用,那架构一个APP需要学些什么技术呢?首先要了解App都有哪些类型,不同的类型适用于哪些需求,用户可以根据自己 ...

  2. 0523 Scrum 项目6.0

    团队名称:√3 团队目标:全力完成这次的项目 团队口号:我要改变世界,改变自己!!! 演讲稿:我们的产品 鸡汤精选 是为了解决 当下社会出现的太多的负能量使得人们的内心十分 的痛苦, 他们需要强大的正 ...

  3. 聚类算法之BIRCH(Java实现)转载

    http://www.cnblogs.com/zhangchaoyang/articles/2200800.html http://blog.csdn.net/qll125596718/article ...

  4. JS中同名函数有效执行顺序

    html中如果出现函数同名时:如果有多个外部引入的js文件,例如a.js和b.js(引入顺序假定是a.js,然后是b.js),同时html中本身也有内部的js.那么针对 出现函数名一样的情况时,无论他 ...

  5. jqueryui引用出错(base is not a constructor,widget no found)

    出错的原因,主要是引用顺序出错. 正确顺序如下: query本身必须放在第一位: <script src="../../../Scripts/Jquery1.7.2/jquery-1. ...

  6. Asp.net 2.0 无刷新图片上传 显示缩略图 具体实现

    简单三步实现图片无刷新上传:注意是上传,至于上传时的验证,比如图片的尺寸,大小,格式判断.限制等,自行解决. 兼容性想还不错:FF,CH,IE,猎豹,都是可以实现的.如果看到回显.当然就是成功了. 经 ...

  7. 网站中集成jquery.imgareaselect实现图片的本地预览和选择截取

    imgAreaSelect 是由 Michal Wojciechowski开发的一款非常好用的jquery插件,实现了图片的截取功能.其文档和Demo也是很详尽的.大家可以到http://odynie ...

  8. echo(),print(),print_r(),var_dump的区别?

    常见的输出语句 echo()可以一次输出多个值,多个值之间用逗号分隔.echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用. print()函 ...

  9. Case1:WorkFlow不能运行的解决办法

    原因为CRMAppPool选择了一个域用户,然后异步服务的用户执行会有问题 at CrmException..ctor(Int32 errorCode, Object[] arguments) ilO ...

  10. 在页面关闭或者刷新的时候触发 onbeforeunload

    该实例演示了如何使用 HTML DOM 向 body 元素添加 "onbeforeunload" 事件. 关闭当前窗口,按下 F5 或点击以下链接触发 onbeforeunload ...