资讯专栏INFORMATION COLUMN

zTree

marser / 2765人阅读

摘要:折叠展开折叠展开脚本下面的是设置了新增按钮的和设置了高度的代码增加子项控制器控制器映射文件工具类工具类省略保存后锁定到新增的节点如果中放了添加按钮,这个就是保存成功之后回去页面展开显示新增的节点保存禁止

【1】折叠展开

</>复制代码

  1. var zTree = $.fn.zTree.init($("#bid_dept"), setting);
  2. $("#expandfalse").click(function (e) {
  3. e.preventDefault();
  4. zTree.expandAll(false);
  5. });
  6. $("#expandtrue").click(function (e) {
  7. e.preventDefault();
  8. zTree.expandAll(true);
  9. });
1)html:

</>复制代码

    2)js脚本:

    </>复制代码

    1. $(function(){
    2. var setting = {
    3. view: {
    4. addHoverDom: addHoverDom,
    5. removeHoverDom: removeHoverDom,
    6. selectedMulti: false
    7. },
    8. data : {
    9. simpleData : {
    10. enable : true,
    11. idKey : "id",
    12. pIdKey : "parent"
    13. }
    14. },
    15. async: {
    16. enable: true,
    17. url: "base/suptype/tree",
    18. autoParam: ["id", "t", "level=lv"],
    19. type: "get"
    20. },
    21. callback : {
    22. onClick : function(e, treeId, treeNode) {
    23. //console.log(treeNode);
    24. urlDetail = "/base/suptype/detail?id=" + encodeURIComponent(treeNode.id);
    25. $("#supdetails").load(urlDetail);
    26. }
    27. }
    28. };
    29. var zTree = $.fn.zTree.init($("#t_suptype"), setting);
    30. //下面的是设置了新增按钮的和设置了高度的代码
    31. function addHoverDom(treeId, treeNode) {
    32. var sObj = $("#" + treeNode.tId + "_span");
    33. if (treeNode.editNameFlag || $("#addBtn_"+treeNode.tId).length>0) return;
    34. var addStr = "";
    35. sObj.after(addStr);
    36. var btn = $("#addBtn_"+treeNode.tId);
    37. if (btn) btn.bind("click", function(){
    38. $("#modal-operate").modal("show");
    39. var url = "/base/suptype/add?parent=" + encodeURIComponent(treeNode.id);
    40. $("#modal-operate-body").load(url);
    41. });
    42. };
    43. function removeHoverDom(treeId, treeNode) {
    44. $("#addBtn_"+treeNode.tId).unbind().remove();
    45. };
    46. var windowHeight = $(window).height();
    47. var mainheaderH = $(".main-header").outerHeight();
    48. var contentheaderH = $(".content-header").outerHeight();
    49. var boxorgheaderH = $("#boxheader").outerHeight();
    50. var deptlistH = windowHeight - mainheaderH - contentheaderH - boxorgheaderH - 30 - 3;
    51. $("#boxlist").slimScroll({
    52. height: deptlistH
    53. });
    54. })
    3)控制器

    </>复制代码

    1. /**
    2. * yyh
    3. * 20180817
    4. * 控制器
    5. * @return
    6. */
    7. @ResponseBody
    8. @GetMapping("/tree")
    9. @RequiresPermissions("base:suptype:suptype")
    10. public String tree(){
    11. List suptypeList = suptypeService.getTreeAllSuptype();
    12. return JSON.toJSONString(suptypeList);
    13. }
    4)映射文件

    </>复制代码

    5)zTree工具类

    </>复制代码

    1. package com.tuodata.bid.common.domain;
    2. import java.io.Serializable;
    3. //zTree工具类
    4. public class zTreeNode implements Serializable {
    5. private static final long serialVersionUID = 1L;
    6. private String id;
    7. private String parent;
    8. private String name;
    9. private Boolean open;
    10. private Boolean isp;
    11. private String icon;
    12. private int t;
    13. private int s;
    14. //省略getter setter
    15. @Override
    16. public String toString() {
    17. return "zTreeNode [id=" + id + ", parent=" + parent + ", name=" + name + ", open=" + open + ", isp=" + isp
    18. + ", icon=" + icon + ", t=" + t + ", s=" + s + "]";
    19. }
    20. }
    6)保存后锁定到新增的节点

    </>复制代码

    1. 如果zTree中放了添加按钮,这个就是保存成功之后回去页面展开显示新增的节点
    2. /**
    3. * 保存
    4. */
    5. @ResponseBody
    6. @PostMapping("/save")
    7. @RequiresPermissions("base:suptype:add")
    8. public String save( SuptypeDO suptype, @RequestParam("code") String code,@RequestParam("name") String name){
    9. String uuid = UUID.randomUUID().toString().replace("-", "");
    10. suptype.setCode(code);
    11. suptype.setName(name);
    12. suptype.setId(uuid);
    13. suptype.setF(1);
    14. if(suptypeService.save(suptype)>0){
    15. zTreeNode node = new zTreeNode();
    16. node.setId(suptype.getId());
    17. node.setParent(suptype.getParent());
    18. node.setName(suptype.getName());
    19. return JSON.toJSONString(node);
    20. }
    21. return JSON.toJSONString(R.error());
    22. }
    【2】禁止获取非文件夹的树的值(观察到复选框是暗色的)

    </>复制代码

    1. check: {
    2. enable: true,
    3. chkboxType: { "Y" : "", "N" : "" }
    4. }
    【3】禁止获取非文件夹的树的值(观察到复选框是暗色的)

    </>复制代码

    1. (id, parent, code, name, icon, t, isp, open, s, ls, f)
      parent:父节点
      open:是否展开
      1)树实体的字段对应
      2)sql脚本
      3)界面查询
    【4】判断有无选中节点

    </>复制代码

    1. var t_sup = $.fn.zTree.getZTreeObj("t_sup");
    2. var tnodes = t_sup.getCheckedNodes();
    3. if (tnodes.length == 0) {
    4. toastr.warning("请选择关联的供应商分类");
    5. return;
    6. }

    文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

    转载请注明本文地址:https://www.ucloud.cn/yun/73984.html

    相关文章

    • zTree -- jQuery 树插件 使用方法与例子

      摘要:简介是一个依靠实现的多功能树插件。使用说明下载文件将需要使用的相关的文件分别放置到相应目录,并且保证相对路径正确。页面分别在和中引入文件,如代码所示。设置是否显示节点的图标。 简介 zTree 是一个依靠 jQuery 实现的多功能 树插件。 网址:http://www.ztree.me/v3/main.p... 上面的网址里有ztree的详细介绍、Demo 演示、API 文档、入门指...

      hightopo 评论0 收藏0
    • zTree v3.5 Demo 演示 OutLook 样式的左侧菜单

      摘要:由于工作需要,这里只是把组合功能中样式的左侧菜单参考源码实现了,分享给大家我的学习所得。代码的配置注意在的配置利用回调将展开按钮转移到标签内,否则展开按钮即小箭头图片无法显示。 简介 为了让朋友们更容易的学习 zTree,官网给出了大量的 Demo,不同的图标,不同的风格,好学易懂,这是官网链接:zTree v3.5 Demo 演示。 由于工作需要,这里只是把组合功能中OutLook ...

      siberiawolf 评论0 收藏0
    • zTree -- jQuery 树插件 构造treeNode JSON 数据对象

      摘要:前言是一个依靠实现的多功能树插件。不同的树目录根据不同的数据,在服务器端编写好不同的,将其配置在这里即可。依赖获取的数据类型,默认值。依赖用于对返回数据进行预处理的函数。详细说明参见文档代码还是树插件使用方法与例子中的那个,不在重复粘贴。 前言 zTree 是一个依靠 jQuery 实现的多功能 树插件。 网址:http://www.ztree.me/v3/main.p... 上回说到...

      周国辉 评论0 收藏0
    • zTree

      摘要:折叠展开折叠展开脚本下面的是设置了新增按钮的和设置了高度的代码增加子项控制器控制器映射文件工具类工具类省略保存后锁定到新增的节点如果中放了添加按钮,这个就是保存成功之后回去页面展开显示新增的节点保存禁止 【1】折叠展开 var zTree = $.fn.zTree.init($(#bid_dept), se...

      gekylin 评论0 收藏0

    发表评论

    0条评论

    marser

    |高级讲师

    TA的文章

    阅读更多
    最新活动
    阅读需要支付1元查看
    <