zoukankan      html  css  js  c++  java
  • OA权限树搭建 代码

    <ul id="tree">
    										<s:iterator value="#application.topPrivilegeList">
    											<li>
    <input type="checkbox" name="privilegeIds" value="${id}" id="ck_${id}" onclick="doChecked(this)"
    					    <s:property value="%{id in privilegeIds?

    'checked':''}"/> /> <label for="ck_${id}"><span class="folder">${name}</span></label> <ul> <s:iterator value="children"> <li> <input type="checkbox" name="privilegeIds" value="${id}" id="ck_${id}" onclick="doChecked(this)" <s:property value="%{id in privilegeIds?'checked':''}"/> /> <label for="ck_${id}"><span class="folder">${name}</span></label> <ul> <s:iterator value="children"> <li> <input type="checkbox" name="privilegeIds" value="${id}" id="ck_${id}" onclick="doChecked(this)" <s:property value="%{id in privilegeIds?

    'checked':''}"/> /> <label for="ck_${id}"><span class="folder">${name}</span></label> </li> </s:iterator> </ul> </li> </s:iterator> </ul> </li> </s:iterator> </ul>

    取消/选中上下级 尾随变化的js

     <script type="text/javascript">
            	$("#tree").treeview();
            </script>
            
      <script type="text/javascript">
    	function doChecked(inp){
    		
    		// 当选中或取消一个权限时,也同一时候选中或取消全部的下级权限
    		var boo=$(inp).attr("checked");
    		/* alert(boo); */
    		$(inp).siblings("ul").find("input").attr("checked", boo);
    		
    		// 当选中一个权限时,也要选中全部的直接上级权限
    		if(inp.checked == true){
    			$(inp).parents("li").children("input").attr("checked", true);
    		}else{
    			// 假设当前是取消选中,而且同级中没有被选中的项,则也取消上级的选中状态
    			var jCheckedSibingCB = $(inp).parent("li").siblings("li").children("input[type=checkbox]:checked");
    			
    			if(jCheckedSibingCB.size() == 0){
    				
    				var jCheckboxInput = $(inp).parent().parent("ul").prev("label").prev("input[type=checkbox]");
    				jCheckboxInput.attr("checked", 0);
    				 
    				// 递归操作每一层直属上级
    				var jParentLi = jCheckboxInput.parent("li");
    				if(jParentLi.size() > 0){
    					doChecked(jCheckboxInput);
    				} 
    			
    			}}
    		
    	}


  • 相关阅读:
    mongodb06---索引
    mongodb05---游标
    mongo04---基本查询
    mysql06---权限控制
    mysql05---游标
    使用 inotifywait的方式监控文件夹发生变化后自动执行脚本的方法
    ubuntu18.04 安装wine以及添加mono和gecko打开简单.net应用的方法
    Android之Socket群组聊天
    史上最完整的Android开发工具集合
    Android SurfaceView使用详解
  • 原文地址:https://www.cnblogs.com/mthoutai/p/6845391.html
Copyright © 2011-2022 走看看