1. 权限校验action
public class CheckPrivilegeAction extends Action{
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
PrivilegeForm pf = (PrivilegeForm) form;
response.setContentType("text/json;charset=utf-8");
List<String> urls = new ArrayList<String>();
JSONArray json = null;
try {
urls = JMongoDB.getUserPrivilegeList(pf.getUid(), true);
json = JSONArray.fromObject(urls);
PrintWriter out = response.getWriter();
System.out.println(json);
out.print(json);
out.flush();
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
2. 权限管理页面
<%@page import="com.db.po.Privilege"%>
<%@ page language="java" contentType="text/html; charset=gbk"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<%@page import="com.db.po.User"%>
<%@page import="java.util.List"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<html>
<head>
<title>JSP for UserForm form</title>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
<script type="text/javascript">
$(function() {
$("#uid").click(function() {
var params = {
uid : $("#uid").val()
};
$.ajax({
url : "checkPrivilege.do",
data : params,
type : 'post',
dataType : 'json',
success : function(data) {
// 获取权限集合,在checkbox里显示
var inputs = document.getElementsByTagName("input");
// 显示其它用户权限checkbox前,先清空当前checkbox已选
for ( var i = 0; i < inputs.length; i++) {
var o = inputs[i];
if (o.type == "checkbox") {
o.checked = "";
}
}
// 为当前用户权限checkbox设置已选
for ( var i = 0; i < inputs.length; i++) {
var obj = inputs[i];
if (obj.type == "checkbox") {
for ( var j = 0; j < data.length; j++) {
//alert("当前权限为:" + obj.value);
if (data[j] == obj.value) {
//alert("设置已选");
obj.checked = "checked";
}
}
}
}
},
error : function() {
alert("获取权限列表集合失败!");
}
});
});
});
</script>
</head>
<body>
<%
User user1 = (User) session.getAttribute("user");
session.setAttribute("user", user1);
if (user1 != null) {
List<User> users = (List<User>) request.getAttribute("users");
List<Privilege> privileges = (List<Privilege>) request
.getAttribute("privileges");
%>
<form action="${pageContext.request.contextPath }/addPrivilege.do">
<table align="center" width="80%" border="1"
style="border-collapse: collapse">
<caption>
<h2>权限管理</h2>
</caption>
<tr>
<td>用户列表</td>
<td>权限列表</td>
</tr>
<tr>
<td><select id="uid" name="uid">
<%
for (User user : users) {
out.print("<option>" + user.getId() + "</option>");
}
%>
</select></td>
<td>
<%
for (Privilege p : privileges) {
%>
<input type="checkbox" name="url" value="<%=p.getUrl()%>"
id="url" /><%=p.getPriName()%>
<%
}
%>
</td>
</tr>
<tr>
<td><html:submit>提交</html:submit>
</td>
<td><html:reset>重置</html:reset>
</td>
</tr>
</table>
</form>
<%
} else {
response.sendRedirect(request.getContextPath() + "/login.jsp");
}
%>
<div></div>
</body>
</html>
分享到:
相关推荐
前端项目-awesome-bootstrap-checkbox,字体可怕的引导复选框和收音机。纯CSS方式使输入看起来更漂亮。
React复选框树 一个简单优雅的复选框树,用于React。 用法 安装 使用您最喜欢的依赖项管理器安装库: yarn add react-checkbox-tree 使用npm: npm install react-checkbox-tree --save 注–此库使用了样式,并...
mtree1.0-checkbox-tableTree-带复选框树形控件,带复选框 支持表格转换为树形表格,使用简单。希望对各位有用,同时也望各位朋友提供更多更好的改进建议!
最近用到用户的权限设置,随手写的vc2005--CheckBox的使用
019_UI_常用组件-BasicViews-button-checkbox-radio视频教材,讲解的比较详细,有兴趣的可以学习下哦
nested_el-checkbox element-ui的el-checkbox实现嵌套多选,单选 tips:chrome获取本地json数据时会产生跨域问题,建议用firefox直接打开 效果图 主要功能: 实现多选框层级嵌套 当选中一个二级子菜单的时候,其对应...
vue配合element-ui框架中el-checkbox 接收json"data:[{key:1,name:'小李'}]"对象时全选与非全选时获取相关设定的值源码文件
indeterminate-checkbox Android CheckBox and RadioButton with additional 3rd 'indeterminate' state. Requirements Based on AppCompat library Requires AppCompat theme API 7 (but tested only on API ...
一个简单的拥有丰富自定义内容的CheckBox多选框集成Gradlecompile 'com.bigmercu.cBox:cbox:1.08'Mavenallprojects { repositories { jcenter() maven { url '...
react-native-item-checkbox, 使用自定义颜色创建你自己的项目复选框 react-native-item-checkbox使用自定义颜色创建你自己的项目复选框。 开始npm i react-native-item-checkbox重要英镑仅适用于react-native-...
React三态复选框 方便地支持不确定状态的复选框的React组件。 该组件与TypeScript兼容。安装在项目中使用此组件最直接的方法是使用npm或yarn 。 # npmnpm i --save react-three-state-checkbox# yarnyarn add react-...
自动动手写了个操作checkbox,里面包括全选、全不选、反选、获取选中值四个功能...
绚丽的复选框 jquery-checkbox 具体参见http://blog.csdn.net/evangel_z/article/details/8259200
前端项目-pretty-checkbox,A pure CSS library to beautify checkbox and radio buttons
循环动态判断checkbox是否被选中foreach(Control c in Panel1.Controls)
React复选框树 一个React应用,展示了一个简单的复选框树组件。 使用引导。 在查看该应用程序。 运行应用 $ git clone https://github.com/joelgeorgev/react-checkbox-tree.git $ cd react-checkbox-tree $ npm ...
pyqt5-checkbox的使用,ui和业务分离版,供大家参考
最近遇到一个问题,在一个页面需要动态渲染页面内的表单,其中包括 checkbox 表单类型,并且使用 Element 组件 UI 时,此时 v-model 绑定的数据也是动态生成的 例如: 定义的 data 的 form 里面是空对象,需要动态...
collapsable-checkbox-源码.rar
Aspnet-CheckBoxList.zip,只是一种使用checkboxlistcheckboxlist的简单方法,asp.net是一个开源的web框架,用于使用.net构建现代web应用和服务。asp.net创建基于html5、css和javascript的网站,这些网站简单、快速,...