项目中使用js回显ztree使用json格式

有这么一个需求,要求人员可以跨部门的权限管理,我们解决方案是,在用户表中增加depLimmit字段(长度要稍微设置点哟),保存部门的id逗号分隔,使用的时候就用in(id1,id2)方式查询使用,

页面分配使用到了ztree树,回显,分配,ajax查看管理部门,这些功能,


 <div  style="margin-left:305px;" id="permissionTreeParentDiv">
        <div style="border:1px solid  #B8D0D6;width:100%;   background:#fff; float:left ">
            <div class="pageHeader" style="background-color: #EFF3F6;">
                <h3>分配权限</h3>
            </div>
            <div layoutH="71">
                <ul class="ztree" id='deparmentPermissionTree'>


                </ul>
              <%--  <ul class="tree treeFolder treeCheck expand">
                        <s:iterator value="departmentList" var="department">
                            <li>
                                <c:remove var="roleFlag"/>
                                <c:forEach items="${depPermissionList}" var="oldDeparment">
                                    <c:if test="${oldDeparment.id == department.id}">
                                        <c:set var="roleFlag" value="checked='true'"/>
                                    </c:if>
                                </c:forEach>
                                <a ${roleFlag} tvalue="${department.id }" tname="departmentIds">${department.name}</a>
                            </li>
                        </s:iterator>
                </ul>--%>
            </div>

            <div class="formBar">
                <ul>
                    <p:url url="adminChangeUser_doUserChangRoleDpLimit.action">
                        <li>
                            <div class="buttonActive">
                                <div class="buttonContent">
                                    <button  class="close" id="depRoleManagementSave"  type="button">保存</button>
                                </div>
                            </div>
                        </li>
                    </p:url>
                    <li>
                        <div class="buttonActive">
                            <div class="buttonContent">
                                <button class="close" type="button">
                                    取消
                                </button>
                            </div>
                        </div>
                    </li>
                </ul>
            </div>

        </div>
    </div>

js控制

<script type="text/javascript">

    var permissionTree = {
        //异步请求
        async: {
            enable: true,
            /*url: "system/role_usersJson.action",
            autoParam: ["id"]*/
        },
        //选择框
        check: {
            enable: true,
            chkboxType: {Y: "ps", N: "s"}
        },
        //数据格式
        data: {
            simpleData: {
                enable: true
            }
        }

    };

    //初始化部门的树形结构
    $.getJSON("system/department_treeDataJsonForCommon.action?_t=" + new Date().getTime()+"&id="+${user.id}, function (json) {
        var permissionTrees  = $.fn.zTree.init($("#deparmentPermissionTree"), permissionTree, json);
        var allNodes = permissionTrees.getNodes();
        $.each(allNodes,function(i,n){
            permissionTrees.checkNode(n, false, true);
        })
        //要选中的id
        var perCheckNodes = [];
        var  inputs = $(":input[name='dp']");
        //构建json串
         var s="{";
        for(var i=0;i<inputs.length;i++){
            //if(inputs[i].value!=''){}
                if(i>0){
                     s+= ",\"id"+i+"\""+":"+"{\"id\":"+inputs[i].value+"}";
                }else{
<span style="white-space:pre">					</span>s+= "\"id"+i+"\""+":"+"{\"id\":"+inputs[i].value+"}";
                }


        }
        s+="}"
        var exts = jQuery.parseJSON(s)
       // var exts = JSON.parse(s);
        //var exts=eval(s)
       //alert(JSON.stringify(exts))
        $.each(exts, function (i, n) {
            perCheckNodes.push(permissionTrees.getNodeByParam("id", n.id, null));
        })
        $.each(perCheckNodes, function (i, n) {
            permissionTrees.checkNode(n, true, false);
        })


    })


    $(function(){


        $("#depRoleManagementSave").click(function(){
            var userId = $("#userId");
            var permissionTree = $.fn.zTree.getZTreeObj("deparmentPermissionTree");
            var nodes = permissionTree.getCheckedNodes(true);
            var data = "";
            $.each( nodes,function (index, node) {
                data += "depPermissionList[" + index + "].id=" + node.id + "&";
            });
            data += "user.id=" + userId.attr("value")+"&date="+new Date().getTime();
            $.ajax({
                type: "POST",
                data: data,
                dataType: "text",
                url: 'adminChangeUser_doUserChangRoleDpLimit.action',
                success: function (data) {
                    DWZ.ajaxDone($.parseJSON(data));
                }
            });




        })
    })
</script> 





 


要引入ztree树的一些js

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值