树状菜单获取选中节点跟选中节点保存到数据库

qq_22948413 2015-08-10 11:32:07
<%@ page language="java" contentType="text/html; charset=UTF-8"%>
<%@ include file="../util/util.jsp" %>

<link rel="stylesheet" href="${basePath}js/zTree/css/demo.css" type="text/css">
<link rel="stylesheet" href="${basePath}js/zTree/css/zTreeStyle/zTreeStyle.css" type="text/css">
<script type="text/javascript" src="${basePath}js/zTree/js/jquery.ztree.core-3.5.js"></script>
<script type="text/javascript" src="${basePath}js/zTree/js/jquery.ztree.excheck-3.5.js"></script>

<script type="text/javascript">
var setting = {
check: {
enable: true,
chkboxType: {"Y" : "p", "N" : "s"}//checkbox选中时不关联子,取消的时候关联子
},
view: {
dblClickExpand: false
},
data: {
simpleData: {
enable: true
}
},
callback: {
beforeClick: beforeClick,
onCheck: onCheck
}
};
var zNodes = null;
function beforeClick(treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("treeDemo");
zTree.checkNode(treeNode, !treeNode.checked, null, true);
return false;
}

function onCheck(e, treeId, treeNode) {
var zTree = $.fn.zTree.getZTreeObj("treeDemo"),
nodes = zTree.getCheckedNodes(true),
v = "",vid = "";
for (var i=0, l=nodes.length; i<l; i++) {
v += nodes[i].name + ",";
vid += nodes[i].id + ",";
}
if (v.length > 0 ) v = v.substring(0, v.length-1);
if (vid.length > 0 ) vid = vid.substring(0, vid.length-1);
$('#adeIds').val(vid);
}

function showMenu() {
if(zNodes==null){
$.ajax({
url:'${basePath}whData/adeTree',
data:{},
dateType:'json',
success:function(data){
if(data){
var str = "[";
$.each(data,function(i,n){
str += '{"id":'+n.ID+',"pId":'+n.PID+',"name":"'+$.trim(n.NAME)+'"}';
if(i<data.length-1){
str += ",";
}
});
zNodes = str+"]";
zNodes = $.parseJSON(zNodes);
$.fn.zTree.init($("#treeDemo"), setting, zNodes);
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
treeObj.expandAll(true);
if ($('#adeIds').val()!='') {
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
var nodes = treeObj.getNodes();
if (nodes.length>0) {
var yydValues = $('#adeIds').val();
$.each(yydValues.split(","),function(i,val){
if($('#treeDemo_'+val+'_check').parent().find('ul').length==0){
$('#treeDemo_'+val+'_check').trigger("click");
}
});
}
}
}else {
alertMsg.error('权限树加载失败!');
}
}
});
}else {
$.fn.zTree.init($("#treeDemo"), setting, zNodes);
var treeObj = $.fn.zTree.getZTreeObj("treeDemo");
treeObj.expandAll(true);
}
}

$(function(){
showMenu();
});

</script>

<div class="pageHeader" style="border:1px #B8D0D6 solid">
${map.roleName}的权限设置
</div>
<div class="pageCohttp://bbs.csdn.net/topics/newntent j-resizeGrid" style="border-left:1px #B8D0D6 solid;border-right:1px #B8D0D6 solid">
<form rel="menuForm" class="pagerForm required-validate" onsubmit="return validateCallback(this, dialogAjaxDone);"
action="${basePath}system/roleAutSave" method="post" novalidate="novalidate">
<input type="hidden" name="adeIds" id="adeIds" value="${ades.adeIds}"/>
<ul id="treeDemo" class="ztree" style="margin-top:0; width:350px; height: 550px;"></ul>

<div class="formBar">
<ul>
<li><div class="buttonActive"><div class="buttonContent"><button type="submit">保 存</button></div></div></li>
</ul>
</div>
</form>
</div>



...全文
171 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
功能:此插件的功能有: 1.选中Asserts中的某个资源,点击鼠标右键,选择Query be Depenced Graphical Display会出现一个自定义窗口,或选择Assets/Query be Depenced Graphical Display。 也会有这样的效果。 2.显示窗口的内容包括: ->被依赖 视图:可以看到选中的文件被依赖文件的情况。 在此视图基础上加了过滤功能,可以通过选择unity和Resource单选框把unity资源和Resource文件下的资源过滤出来。 * Name: 文件名 * Path: 路径 * State: 状态(Normal-正常, Changed-该文件已经被修改过,-No Data-此文件已经被删除) 注:此功能是根据svn status查询本地仓库与远程仓库的区别,并把符合按照题意显示出来的,可以扩展。 ->依赖 视图:可以看到选中的文件依赖文件的情况。 * Name: 文件名 * Path: 路径 * State: 状态(Normal-正常, Changed-该文件已经被修改过,-No Data-此文件已经被删除) 注:此功能是根据svn status查询本地仓库与远程仓库的区别,并把符合按照题意显示出来的,可以扩展。 ->配置: 使用前需要配置访问neo4j的地址和密码 public: 公有地址配置 - 配置的是公有地址,只提供查询。 use it to query单选框:就是选择此地址进行查询。 personal: 个人地址配置 - 配置的是本地地址,提供查询和提交数据。 use it to query单选框:就是选择此地址进行查询。 Modify: 修改查询的个人地址 reflesh: 刷新neo4j数据库 stop: 停止提交 ->展开: 可以选中资源树中的某个节点,点击,把节点的所有子节点展开。 ->收缩: 可以选中资源树的某个节点,点击,把节点的所有子节点收缩;如果该节点是叶子节点,则把它的前一个父节点的孩子节点搜索。 3.使用配置: 因为要查看树状菜单节点的状态,我们使用的是cmd命令访问,所以需要提供路径。这个路径应该是当前工程Assets文件夹的前一个文件夹。注:再向前的文件夹也没问题,只不过是遍历的范围变大了,最好就是前一个文件夹。 修改的变量名称是:currentSvnPath。 而saveCmdRstTxt变量保存的是cmd命令查询下来的返回值,可以根据你的使用情况修改。

87,884

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧