权限模块_分配权限_显示树状结构_页面中的选中效果

权限模块__分配权限__显示树状结构1

显示树状结构;依赖关系

setPrivilegeUI.jsp

    <!-- 显示权限树 -->
    <td>
        <!--用它回显
        <s:checkboxlist name="privilegeIds" list="#privilegeList" listKey="id" listValue="name"></s:checkboxlist>
    -->
    <%--控制样式 --%>
    <s:iterator value="#privilegeList">
        <input type="checkbox" name="privilegeIds" value="${id }" id="cb_${id}"
        <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}" />
    />
    <label for="cb_${id }">${name }</label><%--点文字也能选中 --%>
    <br>
    </s:iterator>
    </td>         

权限模块__分配权限__显示树状结构3

setPrivilegeUI.jsp

Js、css文件导入

    <script language="javascript" src="${pageContext.request.contextPath}/script/jquery_treeview/jquery.treeview.js"></script>
    <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/style/blue/file.css" />
    <link type="text/css" rel="stylesheet" href="${pageContext.request.contextPath}/script/jquery_treeview/jquery.treeview.css" />

setPrivilegeUI.jsp中添加

<!-- 显示树状结构内容 -->
<ul id="tree">
<s:iterator value="#application.topPrivilegeList">
    <li>
        <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> />
        <label for="cb_${id}"><span class="folder">${name}</span></label>
        <ul>
        <s:iterator value="children">
            <li>
                <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> />
                <label for="cb_${id}"><span class="folder">${name}</span></label>
                <ul>
                <s:iterator value="children">
                    <li>
                        <input type="checkbox" name="privilegeIds" value="${id}" id="cb_${id}" <s:property value="%{id in privilegeIds ? ‘checked‘ : ‘‘}"/> />
                        <label for="cb_${id}"><span class="folder">${name}</span></label>
                    </li>
                </s:iterator>
                </ul>
            </li>
        </s:iterator>
        </ul>
    </li>
</s:iterator>
</ul>

权限模块__分配权限__显示树状结构__页面中的选中效果

setPrivilegeUI.jsp中添加

<script type="text/javascript">
        $(function(){
            // 指定事件处理函数
            $("[name=privilegeIds]").click(function(){

                // 当选中或取消一个权限时,也同时选中或取消所有的下级权限
                $(this).siblings("ul").find("input").attr("checked", this.checked);

                // 当选中一个权限时,也要选中所有的直接上级权限
                if(this.checked == true){
                    $(this).parents("li").children("input").attr("checked", true);
                }

            });
        });
    </script>
时间: 2024-08-08 13:59:06

权限模块_分配权限_显示树状结构_页面中的选中效果的相关文章

由简入繁实现Jquery树状结构

在项目中,我们经常会需要一些树状结构的样式来显示层级结构等,比如下图的样式,之前在学.net的时候可以直接拖个服务端控件过来直接使用非常方便.但是利用Jquery的一些插件,也是可以实现这些效果的,比如说Jquery.treeview.js插件. 下面就直入主题,开始从简入繁的分析怎么使用treeview插件,从已知的知识开始轻松入手,让树状结构唾手可得. 显示树状结构的几个实现步骤: 一.HTML做初始静态原型. 首先通过<ul></ul><li></li>

使用Map辅助拼装树状结构,消除递归调用

目前菜单或其他树状结构在数据库中的存储,多数是以一个parentid作为关联字段,以一维形式存储.使用时全部查询出来,然后在内存中拼装成树状结构.现在主要涉及的是拼装方法的问题. 一般可以进行 递归调用来实现 过程如下:1.首先找到根节(s)点即没有上级节点的元素 2.根据找到的节点的id,遍历数据,查看parentid为此id的元素 将其 放到此元素的childlist中去3.对此元素的childlist 重复步骤2 2-3这个步骤的重复 一般通过递归来实现. 我采用的方法,是使用map作为辅

权限模块_分配权限_实现分配权限(登录与注销)的基本功能

权限模块_分配权限_实现分配权限的基本功能 选哪个就能存起来那个,能回显.有依赖关系 把一组相关功能放在一起 RoleAction.java /** * 设置权限页面 */ public String setPrivilegeUI() { //准备回显的数据 Role role = roleService.getById(model.getId()); ActionContext.getContext().getValueStack().push(role);//放到栈顶,从栈顶找对象 if(r

系统管理模块_部门管理_设计(映射)本模块中的所有实体并总结设计实体的技巧_懒加载异常问题_树状结构

系统管理模块_部门管理_设计本模块中的所有实体并总结设计实体的技巧 设计实体流程 1,有几个实体? 一般是一组增删改查对应一个实体. 2,实体之间有什么关系? 一般是页面引用了其他的实体时,就表示与这个实体有关联关系. 3,每个实体中都有什么属性? 1,主键.推荐使用代理主键 2,关联关系属性.在类图中,关联关系是一条线,有两端,每一端对应一个表达此关联关系的属性.有几个端指向本类,本类中就有几个关联关系属性. 3,一般属性.分析所有有关的页面,找出表单中要填写的或是在显示页面中要显示的信息等.

分享使用NPOI导出Excel树状结构的数据,如部门用户菜单权限

大家都知道使用NPOI导出Excel格式数据 很简单,网上一搜,到处都有示例代码. 因为工作的关系,经常会有处理各种数据库数据的场景,其中处理Excel 数据导出,以备客户人员确认数据,场景很常见. 一个系统开发出来,系统要运行起来,很多数据要初始化,这个时候也是需要客户提供各种业务的基础数据.客户提供的数据中,其中除了word.pdf,最常见的就是Excel. 废话不多说,直接上图上代码: 如图, 左侧三列,作为 一个系统 所有菜单的树状结构. 其他列 以用户的信息(如用户名.登录名) 作为表

Hibernate学习笔记_关系映射_树状结构练习

1         树状结构的设计(至关重要) a) 在同—个类中使用One2Many和Many20ne @Entity public class Org { private int id; private String name; private Set<Org> children=new HashSet<Org>(); private Org parent; @Id @GeneratedValue public int getId() { return id; } public

树状结构组装

后台数据组装 /** * 查询权限列表 * @param categoryId * @return */ @Override public List<Map<String, Object>> getMenus(String categoryId) { List<Map<String, Object>>menuallist= userDao.selectMenuAllList(); List<String> meunSelectedList = n

在Silverlight中使用HierarchicalDataTemplate为TreeView实现递归树状结构

将实体绑定到TreeView控件,实现树状结构的显示,如下图所示.这个功能通过HierarchicalDataTemplate实现. ? 1. 业务实体 作为举例,我定义了一个大家都很熟悉的Folder类型,即文件夹.我们都知道,文件夹又可以包含子文件夹,而且可以多层嵌套.所以,这是一个递归的结构体. public class Folder { public string Name { get; set; } public ObservableCollection<Folder> Folder

【ExtJs】利用树状结构、Border布局与标签页刻划OA界面

之前说ExtJs是最适合做OA界面的前端框架,因为它把客户端界面搬来了网页,这东西可以说是,就是为那些各种各样的OA信息系统而生的. 一.基本目标 做出如下的OA界面,点击左边的项可以打开相应的标签页,点击标签页的关闭按钮可以关闭这个标签页,在下方的操作信息栏记录相应的操作. 树状结构可以折叠,可以调整.操作信息可以节点. 搞出这样的结构,就是从小的方面研究ExtJs的其它UI组件与Ajax系统,再配合php,aspx或者jsp等后端语言,就可以去OA系统开黑了,或者,一个不爽,标签页里面的系统