0
点赞
收藏
分享

微信扫一扫

[Layui]Layui 获取树全部选中的节点ID

静悠 2022-03-12 阅读 59

直接上代码

            //递归
            function getChildNodes(treeNode, res) {
                //conosle.log(treeNode);
                for (var i in treeNode) {
                    res.push(treeNode[i].id);
                    res = getChildNodes(treeNode[i].children, res);
                }
                return res;
            }
            // 获取选中节点的id
            function getCheckedId(jsonObj) {
                var id = "";
                $.each(jsonObj, function (index, item) {
                    var i;
                    id = id + "," + item.id;
                    if (item.children != null) {
                        i = getCheckedId(item.children);
                    }
                    if (i != null && id != "") {
                        id = id + "," + i;
                    } else if (i != null) {
                        id = i;
                    }
                });
                return id;
            }

            //提交授权
            form.on('submit(submitgrant)', function (data) {
                var roleid = $('input[name="RoleId"]').val();
                //如何获取选中的叶子节点?
                var rules = tree.getChecked('authlist');
                var nodeIds = new Array();
                nodeIds = getCheckedId(rules);
                nodeIds = nodeIds.split(',');
                nodeIds = nodeIds.filter(function (s) {
                    return s && s.trim();
                });
                data.field.rules = nodeIds;
    

                var url = "http://localhost:8089/api/SysRole/GrantAuth?roleid=" + roleid;
                $.ajax({
                    url: url,
                    method: "POST",
                    data: JSON.stringify(nodeIds),  //传数组
                    dataType: "json",
                    contentType: 'application/json',
                    success: function (msg) {
                        var index = layer.alert(msg.resultMsg, {
                            title: '执行信息'
                        }, function () {
                            // 关闭弹出层
                            layer.close(index);
                            var iframeIndex = parent.layer.getFrameIndex(window.name);
                            parent.layer.close(iframeIndex);
                            //判断是否执行成功了
                            if (msg.resultMsg == "修改成功") {
                                //执行表格重载
                                //parent.reloadTable();
                            }
                        });
                    }
                });
                return false;
            });

在这里插入图片描述

举报

相关推荐

Layui动态树详解

0 条评论