zoukankan      html  css  js  c++  java
  • Struts2标签:checkboxlist

    参考自博文:http://www.blogjava.net/koradji/articles/307399.html

    语法:

    <s:checkboxlist name="" list="" listKey="" listValue="" value="" />

    • name定义标签名,用于接收画面上选中的复选框,故应与Action里定义的属性一致,且多为数组;
    • list定义集合变量,用于输出复选框到画面上,一般在Action里定义一个List或Map属性;
    • listKey如果在Action里定义的是一个List,则往往会在List里定义一个Bean,它只有两个属性,其中一个(比如id)就在这里设置;
      • 如果在Action里定义的是一个Map,则Map的key就在这里设置;
    • listValue如果在Action里定义的是一个List,则往往会在List里定义一个Bean,它只有两个属性,另外一个(比如name)就在这里设置
      • 如果在Action里定义的是一个Map,则Map的value就在这里设置;
    • value用于回显画面上被选中的复选框,假如画面有输入检查,如果有错则返回原画面并显示出错信息,这时候就需要使用它。
      • 一般把它设成和name一致就可以了。

    例子:

    查询了所有的角色,得到用户与角色的所有id了。把封装到数组中。

    
        public String editUI() {
    
            //把所有的角色查询出来,带过去给JSP页面显示
            ActionContext.getContext().getContextMap().put("roleList", roleServiceImpl.findObjects());
    
            //外边已经传了id过来了,我们要找到id对应的User
            if (user != null &&user.getId() != null  ) {
                //直接获取出来,后面JSP会根据User有getter就能读取对应的信息!
                user = userServiceImpl.findObjectById(user.getId());
    
                //通过用户的id得到所拥有UserRole
                List<UserRole> roles = userServiceImpl.findRoleById(user.getId());
                //把用户拥有角色的id填充到数组中,数组最后回显到JSP页面
                int i=0;
                userRoleIds =  new String[roles.size()];
                for (UserRole role : roles) {
                    userRoleIds[i++] = role.getUserRoleId().getRole().getRoleId();
                }
    
            }
            return "editUI";
        }

    name值的是数组,可以用于自动回显。Action得到角色的id也是通过它

    
      <s:checkboxlist list="#roleList" name="userRoleIds" listKey="roleId" listValue="name"></s:checkboxlist>
  • 相关阅读:
    哲学的初步认识7
    随机法解决TSP问题
    哲学的初步认识6
    dfs+dp思想的结合------hdu1078
    动态规划3-------poj1050
    动态规划2-----hdu1069
    动态规划1-----------poj1080
    js中Math.round、parseInt、Math.floor和Math.ceil小数取整小结【转】
    美术馆
    无刷新评论
  • 原文地址:https://www.cnblogs.com/zhong-fucheng/p/7202919.html
Copyright © 2011-2022 走看看