博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JQuery 目录树jsTree插件用法
阅读量:5304 次
发布时间:2019-06-14

本文共 3029 字,大约阅读时间需要 10 分钟。

PHP循环构造目录树结构

    function digui($fid,$level){ $class=M("wangpan_class")->where('fid='.$fid)->select(); foreach($class as $v){ $child=M("wangpan_class")->where('fid='.$v['id'])->select();//如果不为空,表示有子类 if(!empty($child)){ echo "
  • ".str_repeat("  ",$level)."┗".$v['name']."
      "; }else{ echo "
    • ".str_repeat("  ",$level)."┗".$v['name']."
    • "; } digui($v['id'],$level+1); if(!empty($child)){ echo "
  • ";//如果有子类才输出ul / li } } } digui(0,0);

jsTree DEMO

 实现点击获取节点ID,实现配置复选框

/*jsTree代码begin  */  $('#jstree').jstree(); $("#jstree").jstree({    "types" : {      "default" : {        "icon" : "glyphicon glyphicon-flash"      },      "demo" : {        "icon" : "glyphicon glyphicon-ok"      }    },    "plugins" : [ "types" ]  });   // 7 bind to events triggered on the tree  /* 开启checkbox     $("#jstree").jstree({    "checkbox" : {      "keep_selected_style" : false    },    "plugins" : [ "checkbox" ]  });*/   $("#plugins")    .on("changed.jstree", function (e, data) {      console.log(data.changed.selected); // newly selected      console.log(data.changed.deselected); // newly deselected    })    .jstree({      "plugins" : [ "changed" ]    });    $('#jstree').on("changed.jstree", function (e, data) {      console.log(data.selected);       var id = $(e.target).html();     // alert(id);    });  $('#jstree').bind("activate_node.jstree", function (obj, e) {    // 获取当前节点    alert(e.node.id);//得到被点击节点的id});        /*end  jsTree*/
View Code

 

https://www.jstree.com/

  
jsTree test
  • Child node 0-1
  • Child node 0-2
  • Child node 0-3
  • Root node 1
    • Child node 1-1
    • Child node 1-2
    • Child node 1-3
  • Root node 2
    • Child node 2-1
      • Child node 2-3-1
      • Child node 2-3-2
      • Child node 2-3-3
    • Child node 2-2
    • Child node 2-3
      • Child node 2-3-1
      • Child node 2-3-2
      • Child node 2-3-3
View Code

 

jstree官网:

1.需要导入的文件

 

2.在页面上创建一个jstree容器(div)

3.创建一个jstree实例

效果:

4.ajax动态加载jstree

$.getJSON("/FIMS/api/rest/RolePermission/loadPermissionTreeData",{ts_role_id:ts_role_id}, function(json){		$('#rolePermissionTree').jstree({ 'plugins':['checkbox'], 'core' : { 'data' : json.datalist }}); } );

5.清空树(数据库的信息更新后想要刷新树,先要清空树)

$('#perjstree').data('jstree', false).empty();

6.绑定节点点击事件

$('#orgjstree').bind("activate_node.jstree", function (obj, e) { // 获取当前节点 alert(e.node.id);//得到被点击节点的id });

7.得到所有被选中的节点的id(先加上'plugins':["checkbox"],使所有的节点前面加上checkbox)

 

var ids = $('#rolePermissionTree').jstree().get_checked();

 

 

转载于:https://www.cnblogs.com/xtmp/p/6894512.html

你可能感兴趣的文章
文档系统
查看>>
Spring源码入门——AnnotationBeanNameGenerator解析
查看>>
日志工具 Log4j
查看>>
JSTL中想要实现break类似功能的实现方法!
查看>>
ANDROID_MARS学习笔记_S01_004dpi、dp(dip)及计算
查看>>
PHP-用ThinkPHP和Bootstrap实现用户登录设计
查看>>
学习一下mysql的日期相关函数(转)
查看>>
Daily Report 2012/11/07 陈伯雄(step 8)
查看>>
spring boot 集成 shiro
查看>>
ue4访问php接口
查看>>
Python day5_tuple元祖的常见方法1_笔记
查看>>
WPF经纬度控件
查看>>
概述(一):java概述
查看>>
js基础知识之_入门变量和运算符
查看>>
Windows Phone设备大比拼
查看>>
新增颜色模式
查看>>
JFinal项目搭建
查看>>
图标签
查看>>
Mysql和MongoDB性能对比及应用场景分析
查看>>
iOS开发之:dispatch_async 与 dispatch_get_global_queue 的使用方法
查看>>