本文不再更新,可能存在内容过时的情况,实时更新请访问原地址:ztree根据参数动态控制是否显示复选框/单选框(静态JSON数据)

现有全省各地区静态JSON数据,现在想通过Url参数,动态控制是否显示复选框/单选框,实现方式如下:

  1. var rootNode, isCascadeSelect = '1';
  2. var urlParamsJson = urlParams();
  3. var selType = urlParamsJson.selType, isChkbox = urlParamsJson.isChkbox;
  4. initTree();
  5. function initTree() {
  6. // 用于存储树的节点
  7. var treeNodes = [];
  8. $.ajax({
  9. url: area_tree_data,
  10. async: false,
  11. dataType: "json",
  12. type: "GET",
  13. success: function (result) {
  14. treeNodes = result;
  15. }
  16. });
  17. // ztree设置
  18. var treeSetting = {
  19. data: {
  20. key: {
  21. name: "name"
  22. },
  23. simpleData: {
  24. enable: true,
  25. idKey: "code",
  26. pIdKey: "pcode"
  27. }
  28. },
  29. check: {
  30. enable: selType ? true : false,
  31. chkStyle: isChkbox == "1" ? "checkbox" : "radio",
  32. radioType: "all",
  33. chkboxType: {"Y": isCascadeSelect == "1" ? "s" : "", "N": isCascadeSelect == "1" ? "s" : ""}
  34. },
  35. callback: {
  36. beforeExpand: zTreeBeforeExpand
  37. }
  38. };
  39. // 初始化功能树
  40. areaTree = ztree.init($("#area-tree"), treeSetting, treeNodes);
  41. rootNode = areaTree.getNodes()[0];
  42. areaTree.expandNode(rootNode, null, null, null, true);
  43. }
  44. function zTreeBeforeExpand(treeId, treeNode) {
  45. if (selType) {
  46. var selectTypes = selType.split(";");
  47. if ($.inArray((treeNode.level + 1).toString(), selectTypes) == "-1") {
  48. treeNode["nocheck"] = true;
  49. areaTree.updateNode(treeNode);
  50. }
  51. $.grep(treeNode.children, function (childNode, index) {
  52. if ($.inArray((childNode.level + 1).toString(), selectTypes) == "-1") {
  53. childNode["nocheck"] = true;
  54. areaTree.updateNode(childNode);
  55. }
  56. });
  57. }
  58. }

页面调用地址:http://localhost:8080/html/portrait/area-tree.html?selType=1;2;3&isChkbox=1

本文不再更新,可能存在内容过时的情况,实时更新请访问原地址:ztree根据参数动态控制是否显示复选框/单选框(静态JSON数据)

ztree根据参数动态控制是否显示复选框/单选框(静态JSON数据)的更多相关文章

  1. element-ui tree 根据不同叶子节点设置是否显示复选框

    公司业务要求不同根节点配置显示与否复选框,官方文档没有这样的配置,所以想到了修改element-ui源码. 1.这里将“node_modules\element-ui\packages”下的tree文 ...

  2. 关于SWT常用组件(按钮,复选框,单选框(Button类))

    Button是SWT中最常用的组件.Button类的继承关系图: Button类的构造方法是newe Button(Composite parent,int style)它有两个参数: 第一个参数:是 ...

  3. [CSS]复选框单选框与文字对齐问题的研究与解决.

    前言:今天碰到的这个问题, 恰好找到一个很好的博文, 在这里转载过来 学习下. 原文地址:复选框单选框与文字对齐问题的研究与解决. 目前中文网站上面的文字,就我的个人感觉而言,绝大多数网站的主流文字大 ...

  4. pentaho cde 自定义复选下拉框 checkbox select

    pentaho  自带的component 虽多,但是当用户需要在一个表格中查看多个组别的数据时,pentaho自带的单选框就不能实现了,所以复选下拉框势在必行,实现效果如下: 实现原理是借用了jqu ...

  5. MFC控件编程之复选框单选框分组框

    MFC控件编程之复选框单选框分组框 一丶分组框 分组框 英文叫做 GroubBox 添加了分组框主要就是分组.好看.不重点介绍 二丶单选框 英文: Raido Button 单选框需要注意的事项 1. ...

  6. php 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等

    /** * 查找数组中是否存在某项,并返回指定的字符串,可用于检查复选,单选等 * @param $id * @param $ids * @param string $returnstr * @ret ...

  7. jq check 复选变单选。

    $("input[type='checkbox']").on("click",function(e){ var $checked = $("input ...

  8. 根据参数显示类别(三级联动,需要JSON数据)

    根据参数显示类别(三级联动,需要JSON数据) Scripts/Category.js 调用方法: $(function () { BindCategory(); //默认绑定文本框中的值 BindC ...

  9. springMvc接收ajax数组参数,以及jquery复选框选中、反选、全选、全不选

    一.复选框选中.反选.全选.全不选 html代码: <input type='checkbox' name='menuCheckBox' value='10' >苹果 <input ...

随机推荐

  1. 【Java】InnerClass 内部类

    Java 允许一个类的定义位于另一个类的内部,前者为内部类,后者称为外部类 InnerClass一般定义它的类或语句块之中外部类引用时必须给出完整的名称 成员内部类 & 局部内部类 - 静态成 ...

  2. 复习python的__call__ __str__ __repr__ __getattr__函数 整理

    class Www: def __init__(self,name): self.name=name def __str__(self): return '名称 %s'%self.name #__re ...

  3. 基于RabbitMQ的Rpc框架

    参考文档:https://www.cnblogs.com/ericli-ericli/p/5917018.html 参考文档:RabbitMQ 实现RPC MQ的使用场景大概包括解耦,提高峰值处理能力 ...

  4. vue的组件通讯

    Vue的组件通讯又称组件传值 一.父子组件传值: 父组件: <子组件名   :动态变量名 (随便起)='你想要传递的数据' ></子组件名> 子组件: 利用 prop去接收父组 ...

  5. Q - QQpet exploratory park HDU - 1493 (概率DP)

    题目大意: 一共有61个位置,标记为0~60.其中有10个重要位置,分别为:5, 12, 22, 29, 33, 38, 42, 46, 50 and 55. 有一个筛子,一共6个面,标有1~6.摇到 ...

  6. Problem E. Bet

    转载:https://blog.csdn.net/qq_40861916/article/details/84403731 #include<iostream> #include<c ...

  7. 今天开始让我们一起来学JavaScript吧!(今天先扯先别的)

    1.为什么要学习JavaScript? 首先它是web开发人员必须学习的3门语言之一: ①HTML定义了网页的内容 ②CSS描述了网页的布局: ③JavaScript网页的行为 首先JavaScrip ...

  8. Python 代码编辑器怎么选?PyCharm、VS Code、Jupyter Notebook 都各有特色

    Python 代码编辑器怎么选?PyCharm.VS Code.Jupyter Notebook 都各有特色,Jupyter 适合做数据分析这些需要可视化的操作,PyCharm 更适合做完整的 Pyt ...

  9. RT-Thread—STM32—在线升级(Ymodem_OTA、HTTP_OTA)

    概述 本教程主要根据官方推荐的教程进行改编,详细信息请参考OTA Downloader软件包STM32 通用 Bootloader 本例程通过自己实际搭建环境,测试总结. bootloader的制作 ...

  10. css3--弹性布局

    来源:https://www.cnblogs.com/xuyuntao/articles/6391728.html