struts2标签optiontransferselect

package cn.itcast.bean;
public class Role {
 private Integer roleId;
 private String roleName;
 public Integer getRoleId() {
  return roleId;
 }
 public void setRoleId(Integer roleId) {
  this.roleId = roleId;
 }
 public String getRoleName() {
  return roleName;
 }
 public void setRoleName(String roleName) {
  this.roleName = roleName;
 }
}

package cn.itcast.action;

import java.util.ArrayList;
import java.util.List;

import cn.itcast.bean.Role;

import com.opensymphony.xwork2.ActionContext;
public class OptionTransferSelectAction {
    private String[] leftRoles;
    private String[] rightRoles;
 public String[] getLeftRoles() {
  return leftRoles;
 }
 public void setLeftRoles(String[] leftRoles) {
  this.leftRoles = leftRoles;
 }
 public String[] getRightRoles() {
  return rightRoles;
 }
 public void setRightRoles(String[] rightRoles) {
  this.rightRoles = rightRoles;
 }
 public String execute(){
     ArrayList<Role> leftList=new ArrayList<Role> (); 
    
        Role leftRoles1=new Role();
        leftRoles1.setRoleId(1);
        leftRoles1.setRoleName("角色1");
       
        Role leftRoles2=new Role();
        leftRoles2.setRoleId(2);
        leftRoles2.setRoleName("角色2");
       
        Role leftRoles3=new Role();
        leftRoles3.setRoleId(3);
        leftRoles3.setRoleName("角色3");
       
        Role leftRoles4=new Role();
        leftRoles4.setRoleId(4);
        leftRoles4.setRoleName("角色4");
       
        leftList.add(leftRoles1);
        leftList.add(leftRoles2);
        leftList.add(leftRoles3);
        leftList.add(leftRoles4);
       
        ArrayList<Role>  rightList=new ArrayList<Role>();
       
        Role rightRoles1=new Role();
        rightRoles1.setRoleId(1);
        rightRoles1.setRoleName("角色5");
       
        Role rightRoles2=new Role();
        rightRoles2.setRoleId(2);
        rightRoles2.setRoleName("角色6");
       
        Role rightRoles3=new Role();
        rightRoles3.setRoleId(3);
        rightRoles3.setRoleName("角色7");
       
        Role rightRoles4=new Role();
        rightRoles4.setRoleId(4);
        rightRoles4.setRoleName("角色8");
       
        rightList.add(rightRoles1);
        rightList.add(rightRoles2);
        rightList.add(rightRoles3);
        rightList.add(rightRoles4); 
       
        ActionContext.getContext().put("leftlist",leftList);
        ActionContext.getContext().put("rightlist",rightList);
           return "success";
 }
 public String optionTransferSelectPost(){
  List<String> right = new ArrayList<String>();
  for(int i=0;i<rightRoles.length;i++){
   right.add(rightRoles[i]);
  }
  List<String> left = new ArrayList<String>();
  for(int i=0;i<leftRoles.length;i++){
   left.add(leftRoles[i]);
  }
  ActionContext.getContext().put("left",left);
  ActionContext.getContext().put("right",right);
  return "option";
 }
}
optiontransferselect.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'personlist.jsp' starting page</title>
   <script type="text/javascript">
   function selectRight(){
    var right = document.forms[0].rightRoles;
    for(var i=0;i<right.length;i++)
     right[i].selected=true;
    var left = document.forms[0].leftRoles;
    for(var i=0;i<left.length;i++)
     left[i].selected=true;
   }
   </script>
  </head>
  <body>
  <s:form action="select_optionTransferSelectPost">
  <s:optiontransferselect
            label="整个optiontransferselect的说明"
            name="leftRoles"
            leftTitle="用户已授权角色"
            list="#request.leftlist"
            listKey="roleId"//提交的值
            listValue="roleName" //显示的值
            multiple="true"
            headerKey="headerKey"
            headerValue="--- 请选择用户角色 ---"
            emptyOption="false"
            allowUpDownOnLeft="true"
            cssStyle="width:200px;height:300px;"
            rightTitle="用户未授权的角色"
            doubleList="#request.rightlist"
            doubleListKey="roleId"
            doubleListValue="roleName"
            doubleName="rightRoles"
            doubleHeaderKey="doubleHeaderKey"
            doubleHeaderValue="--- 请选择用户角色 ---"
            doubleEmptyOption="false"
            doubleMultiple="true"
            allowUpDownOnRight="true"
            doubleCssStyle="width:200px;height:300px;"
           
            addToLeftLabel="导入左侧"
            addToRightLabel="导入右侧"
            addAllToLeftLabel="全部导入左侧"
            addAllToRightLabel="全部导入右侧"
           
            leftDownLabel="向下移动"
            rightDownLabel="向下移动"
            leftUpLabel="向上移动"
            rightUpLabel="向上移动"
            selectAllLabel="全部选中"
/>
<s:submit value="提交" οnclick="selectRight()"></s:submit>
  </s:form>
  </body>
</html>

optionResult.jsp
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>My JSP 'personlist.jsp' starting page</title>
 <meta http-equiv="pragma" content="no-cache">
 <meta http-equiv="cache-control" content="no-cache">
 <meta http-equiv="expires" content="0">
  </head>
  <body>
  <s:debug></s:debug>
     <h3>已选角色</h3><br>
     <s:iterator value="#request.right" var="r">
      <s:property value="#r"/><br>
     </s:iterator>
     <h3>没有被选角色</h3><br>
     <s:iterator value="#request.left" var="l">
      <s:property value="#l"/><br>
     </s:iterator>
  </body>
</html>
struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "
http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
<!-- 是否允许OGNL表达式中调用静态方法,重要的 -->
<constant name="struts.ognl.allowStaticMethodAccess" value="true"></constant>
 <package name="itcast" namespace="/itcast" extends="struts-default">
  <action name="list" class="cn.itcast.action.PersonListAction">
   <result name="list">/WEB-INF/page/personlist.jsp</result>
  </action>
  <action name="select_*" class="cn.itcast.action.OptionTransferSelectAction" method="{1}">
   <result name="success">/WEB-INF/page/optiontransferselect.jsp</result>
   <result name="option">/WEB-INF/page/optionResult.jsp</result>
  </action>
 </package>
</struts>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值