ztree学习---将默认勾选的展开

这里只给出前台页面上的代码,数据可以从后台获取,注意,在封装数据的时候,注意:Id(节点的id,可以是数字也可以是字符串) , pid(父亲节点的id) , name(节点名称)不能少 。

html页面插入的代码:

    <div id="dialog-confirm" class="hide">
            <input type="hidden" id="uid" value=""/>
            <div class="zTreeDemoBackground left">
                <ul id="roleTree" class="ztree" ></ul>
            </div>
        </div>

将后台获取的数据展示成树状,默认勾选的将展开:

从后台获取数据,并展示成树状

 1 //弹出框分配角色
 2         function GetJqGridRowValue(id) {
 3             //window.open("[(${#request.getContextPath()})]/api/v1/registerService/manage");
 4             $( "#dialog-confirm" ).removeClass(‘hide‘).dialog({
 5                 resizable: true,
 6                 width: ‘500‘,
 7                 height:‘400‘,//设置弹框的长度和高度,如果内容超过限制,则会出现滚动条
 8                 modal: true,
 9                 title: "<div class=‘widget-header‘><h4 class=‘smaller‘>分配角色</h4></div>",
10                 title_html: true,
11                 buttons: [
12                     {
13                         html: "<i class=‘ace-icon fa fa-check‘></i>&nbsp; 保存",
14                         "class" : "btn btn-primary btn-minier",
15                         click: function() {
16                             //点击保存事件触发的事件17                             $( this ).dialog( "close" );
18                         }
19                     }
20                     ,
21                     {
22                         html: "<i class=‘ace-icon fa fa-times bigger-110‘></i>&nbsp; 取消",
23                         "class" : "btn btn-minier",
24                         click: function() {
25                             $( this ).dialog( "close" );
26                         }
27                     }
28                 ]
29             });
30
31             32             var setting = {
33                 check: {
34                     enable: true,
35                     nocheckInherit: true
36                 },
37                 data: {
38                     simpleData: {
39                         enable: true //这里启用简单数据格式,请务必设置id, pId,并且让数据满足父子关系,即对后台数据的要求,并且根节点pid为0
40                     }
41                 }
42             };
43             $.ajax({
44                 type: "get",
45                 url: "[(${#request.getContextPath()})]/api/v1/***,//从后台获取数据的url
46                 data: {},
47                 dataType: "json",
48                 success: function(data){
49                     $.fn.zTree.init($("#roleTree"), setting, data); //根据后台传过来的List<Map(String,String>>数据组装成树结构,map中包含id,pid,name,checked等key。
50                     //树状结构,默认展开被勾选的 start
51                     var tree = $.fn.zTree.getZTreeObj("roleTree");
52                     var nodes=tree.getCheckedNodes(true);
53                     for(var j=0;j<nodes.length;j++){
54                           var node = tree.getNodeByParam("id",nodes[j].id);
55                           var parent = node.getParentNode();
56                           if(!parent.open){
57                              tree.expandNode(parent,true,true);
58                           }
59                           tree.checkNode(node , true,true);
60                     }
61                     //end
62                 },
63                 error: function(XMLHttpRequest, textStatus, errorThrown) {
64                     alert(XMLHttpRequest.status);
65                     alert(XMLHttpRequest.readyState);
66                     alert(textStatus);
67                 },
68             });
69         }

设置默认展开勾选核心代码:

 1 //树状结构,默认展开被勾选的 start
 2                     var tree = $.fn.zTree.getZTreeObj("roleTree");
 3                     var nodes=tree.getCheckedNodes(true);
 4                     for(var j=0;j<nodes.length;j++){
 5                           var node = tree.getNodeByParam("id",nodes[j].id);
 6                           console.log("strs[j]"+nodes[j]+"node.id="+nodes[j].id)
 7                           var parent = node.getParentNode();
 8                           if(!parent.open){
 9                              tree.expandNode(parent,true,true);
10                           }
11                           tree.checkNode(node , true,true);
12                     }

效果如下图:

List<Map<String,String> >结构如下:

map .put("pid","0"),map.put("id","111"),map.put("name","public")

map .put("pid","111"),map.put("id","admin"),map.put("name","管理员")

..........

最后将map加入到list中返回给前台

时间: 2024-10-09 09:39:34

ztree学习---将默认勾选的展开的相关文章

ztree 修改数据 默认勾选节点 数据回显

var treeObj = $.fn.zTree.getZTreeObj(treeid); var data = $("#hiddentree"+'${model.objUid}').val(); var datas = data.split(','); var inputtree = ''; var d = ''; for(var i = 0;i<datas.length;i++){ treeObj.checkNode(treeObj.getNodesByParam("

前端checkbox默认勾选状态的判断

最近迭代版本的 加了一个新功能 每一条数据有一个checkbox 然后后端传过来的是 每条数据的名字的字符串 并不是ID 然后根据名字去给他加默认有勾选状态或者没有勾选状态 input.checked = (给你传的名字.indexOf(每一条数据的名字)<0) 当然 checked的值 只是ture 或者false 你还需要在其他地方判断一下 if(checked){ <input type="checkbox" checked class="campaigng

Android学习——设备管理器勾选后不能再取消了

自己最近在学习Android过程中,下载了一个Demo尽然不能取消设备管理器,也不能卸载.自己猛一想这事如何实现的? 首先AndroidManifest.xml: Xml代码   <receiver android:name="com.dean.autosetting.DeviceMyReceiver" android:description="@string/description" android:label="@string/app_name&

如何默认勾选上Android keyboard(AOSP)输入法

<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">在做项目的时候,有时候会内置其它输入法,同时也会默认为第三方输入法</span> <span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 2

复选框默认勾选

<input type="checkbox" checked ='checked'/> js控制checkbox是否选中的代码: function check()  {  document.getElementById("check1").checked=true  }function uncheck()  {document.getElementById("check1").checked=false  }

elementUi-复选框,使用v-for循环出来的复选框,默认多个值为勾选状态

1. 使用 v-model="BottomSelectFor[index].tick" 绑定要默认勾选的状态 2.在数组中定义 tick:true,没有的字段默认为false 3.实现效果 原文地址:https://www.cnblogs.com/wuhefeng/p/11316876.html

给checkbox添加属性 checked=&quot; &quot; 的话,该checkbox会否勾选上

checkbox中,checked=" ",中间无论是空格还是任何字符,都是默认选上.如果是checked="",则浏览器解析成checked. 例子: <input type="checkbox" checked=""><input type="checkbox" checked=false> 结果: 经测试得出结论: 1.不加checked,则默认不勾选 2.加checked,则

Ztree _ 横向显示子节点、点击文字勾选、去除指定元素input的勾选状态

前些天项目需要树结构表现数据,需求ztree就能满足所以直接使用ztree只是踩了些小坑... 1.ztree子节点横向显示(下图): 效果说明:第三级子节点按需求横向显示其他竖向显示,每行最多显示5个(修改位置在zTreeStyle.css里面哦,在外面设置不上的,页面也获取不到想要设置样式的节点...如果你能还望赐教)代码如下: 1 .ztree>li>ul>li>ul>li>ul{overflow:hidden;} 2 .ztree>li>ul>

Android默认输入法勾选多国语言,并默认其中一种语言

1.首先在设备上调整输入法 设置>语言输入法>Android键盘(AOSP),在输入语言里勾选要选择的语言,比如选"英语(美国)"和"西班牙文"两种: 2.选择系统输入法的默认语言(默认为两种语言中的"西班牙文") 打开一个能能调出输入法的应用,下拉通知栏里,"选择输入法"调整为"西班牙文" 3.查看Setting数据库文件 adb pull data/data/com.android.prov