📄 selprivilege.jsp
字号:
<%@ page language="java" contentType="text/html;charset=GBK"%>
<%@ taglib prefix="ww" uri="webwork" %>
<%@ page import="com.opensymphony.xwork.util.OgnlValueStack" %>
<%@ page import="com.wygl.xtgl.domain.Privilege" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.Iterator" %>
<%
OgnlValueStack stack = (OgnlValueStack)request.getAttribute("webwork.valueStack");
List privilegesGranted = (List)stack.findValue("privilegesGranted");
List privilegesGrantedId = new ArrayList();
for(Iterator it = privilegesGranted.iterator();it.hasNext();){
Privilege pri = (Privilege)it.next();
privilegesGrantedId.add(pri.getId());
}
String roleId;
roleId = (String)stack.findValue("roleId");
%>
<HTML><HEAD>
<style>
.wukuang {
border: 0px none;
background-image: url(../../../images/tbg.gif);
}
.img {
border: 0px none;
}
.imgd {
vertical-align: bottom;
border: 0px none;
}
table {
font-size: 12px;
}
</style>
<script language="javascript">
function subPrivilege(){
document.form1.target='right';
document.form1.submit();
parent.close();
}
function close(){
top.close();
}
</script>
<link href="<%= request.getContextPath() %>/css/dtree.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="<%=request.getContextPath()%>/js/dtree1.js"></script>
</HEAD>
<BODY leftMargin=0 topMargin=0 marginwidth="0" marginheight="0">
<table cellspacing="0" cellpadding="0" align="center">
<tr><td class="topg"/></tr>
</table>
<table border="0" cellspacing="0" cellpadding="0" align="center" class="wukuang">
<tr>
<td width="1%" align="left" ><img class="img" src="<%= request.getContextPath() %>/images/tleft.gif"></td>
<td width="30%" align="left">[权限组授权]</td>
<td width="68%"align="right"><a href="javascript:subPrivilege();"><img class="imgd" src="<%= request.getContextPath() %>/images/button/sq.gif" border="0"></a><a href="javascript:close();" ><img class="imgd" src="<%= request.getContextPath() %>/images/button/close.gif" border="0"></a></td>
<td width="1%" align="left" ><img class="img" src="<%= request.getContextPath() %>/images/tright.gif"></td>
</tr>
</table>
<table cellspacing="0" cellpadding="0" align="center">
<tr><td class="topg"/></tr>
</table>
<table width="98%" align="center" border="0" cellpadding="0" cellspacing="0">
<tr>
<td>
<form name="form1" action="Privilege!addpri.action" method="POST">
<input type="hidden" name="roleId" value=<ww:property value="roleId"/>>
<div class="dtree">
<script type="text/javascript">
<!--
var stdArray = new Array();
d = new dTree('d');
<ww:iterator value="privileges" status="status">
<%
String priGranted = "false";
if(privilegesGrantedId.contains(stack.findValue("id"))){
priGranted = "true";
}
%>
<ww:if test="parent_id==null">
d.add(Number(<ww:property value="id"/>),-1,'<input type="checkbox" name="selectPrivileges" id="<ww:property value="id"/>" <%if (priGranted=="true") out.print("checked = true");%> value="<ww:property value="id"/>" onclick="selectall_01(this);">'+'<ww:property value="name"/>');
</ww:if>
<ww:elseIf test="parent_id!=null">
d.add(Number(<ww:property value="id"/>),Number(<ww:property value="parent_id"/>),'<input type="checkbox" name="selectPrivileges" id="<ww:property value="id"/>" <%if (priGranted=="true") out.print("checked = true");%> value="<ww:property value="id"/>" onclick="selectbox(this);">'+'<ww:property value="name"/>','','','right');
</ww:elseIf>
stdArray[<ww:property value="#status.index"/>]='<ww:property value="id"/>';
</ww:iterator>
document.write(d);
</script>
<script language="javascript">
function selectall_01(obj){
var le = document.form1.selectPrivileges.length;
var id = obj.id;
for(i=0;i<le;i++)
{
if(document.form1.selectPrivileges[i].type=="checkbox" && document.form1.selectPrivileges[i].id!=id){
document.form1.selectPrivileges[i].checked=obj.checked;
}
}
}
function selectbox(obj){
var name = obj.id;
var len = name.length;
if(obj.checked){
for(i=0;i<stdArray.length;i++){
id = stdArray[i].substring(0,len);
if(name==id){
cbx = document.getElementById(stdArray[i]);
if(cbx != null){
cbx.checked=true;
}
}
}
len = Number(len)-2;
for(j=len; j>1; j=j-2){
cbx = document.getElementById(name.substring(0,j));
if(cbx != null){
cbx.checked=true;
}
}
}else{
selectpriGranted(obj);
}
}
function selectpriGranted(obj){
var name = obj.id;
var num = name.length;
//当取消选报子节点时,如果同级节点还有被选中的话上层节点不变,否则也被取消
for(i=0;i<stdArray.length;i++){ //取消所有下级
if(stdArray[i].length >=num && stdArray[i].substr(0,num) == name){
cbx = document.getElementById(stdArray[i]);
if(cbx != null){
cbx.checked = false;
}
}
}
var sfxz = "0";//同一级是否有被选中的
var len = Number(num)-2;
tmp = name.substr(0,len);
for(i=0;i<20;i++){ //校验同级节点是否还有被选中的
if(i<10){
tmpName = tmp+"0"+i;
}else{
tmpName = tmp+i;
}
cbx = document.getElementById(tmpName);
if(cbx != null && cbx.checked){
sfxz = "1";
break;
}
}
if(sfxz == "0"){
basename = name.substr(0,len);
for(j=len; j>1; j=j-2){
var num1 = j+2;
var vid = name.substring(0,j);
var sfxy = "0";//判断当前节点下属节点的是否还有被选中的
for(i=0;i<20;i++){
if(i<10){
tmpName = vid+"0"+i;
}else{
tmpName = vid+i;
}
cbx = document.getElementById(tmpName);
if(cbx != null && cbx.checked==true){
sfxy="1";
}
}
if(sfxy=="0"){//如果同级节点没有被选中的话,上级节点取消选中
cbx = document.getElementById(vid);
if(cbx != null){
cbx.checked=false;
}
}
}
}
}
</script>
</div>
</td>
</tr>
</table>
</form>
</BODY>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -