直接上代码
//递归
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;
});