文档章节

spring 3.2 mvc 点击修改按钮时<form:checkbox/>使原来选中的前面画勾

wenwen1
 wenwen1
发布于 2012/12/17 16:17
字数 355
阅读 1945
收藏 6

jsp页面的代码如下所示:

<td class="label" valign="top">
          <fmt:message key="authority.cname.title"/>:
         </td>
    <c:forEach items="${authoritys}" var="current" varStatus="i">
        <td>
                      <form:checkbox path="userName" value="${current.id}" checked="checked"/>
      ${current.CName}
     </td>
    </c:forEach>
    <c:forEach items="${authorities}" var="cur" varStatus="j">
        <td>
                      <form:checkbox path="userName" value="${cur.id}"/>
      ${cur.CName}
     </td>
    </c:forEach>

红色的项表示用户已有的权限,利用循环和checked="checked"在每行加上使这些权限项的前面画勾,绿色的代码表示用户没有的权限,利用循环将这些项显示出来。

control层的代码如下所示:

/*
 * edit an existing Authority entity
 */
@RequestMapping("/updateAuthority")
public ModelAndView updateAuthority(@RequestParam Integer idKey)
{
   ModelAndView mav=new ModelAndView();
   User user=systemManageService.findUserById(idKey);
   Set<Authority> sets=systemManageService.findAllAuthorities();
   mav.addObject("user", user);
   mav.addObject("users", shareService.getUsersMap());
   mav.addObject("authoritys", user.getAuthorities());
   mav.addObject("authorities",systemManageService.findOtherAuthorities(idKey));
   mav.addObject("size", sets.size());
   mav.setViewName("_operate/updateAuthority.jsp");
   return mav;
}

service层如下所示:

/*
  * 查找所有的权限信息
  */
 @Transactional
 public Set<Authority> findAllAuthorities()
 {
  return authorityDAO.findAllAuthoritys();
 }

/*
  * 查找用户没有的权限
  */
 public List<Authority> findOtherAuthorities(Integer idKey)
 {
  Set<Authority> sets=this.findAllAuthorities();//得到所有的权限数据;
  User user=userDAO.findUserByPrimaryKey(idKey);
  List<Authority> list=new ArrayList<Authority>();//创建一个空的权限的数组;
  list.addAll(sets);
  Set<Authority> userauth=user.getAuthorities();//得到用户现有的权限;
  List<Authority> list2=new ArrayList<Authority>();//创建一个空的权限的数组;
  list2.addAll(userauth);//将一个set的authority数组转换成一个list型的;
  for(int i=0;i<list2.size();i++)
  {
   Authority auth=list2.get(i);
   int id=auth.getId();
   for(Authority authority:sets)
   {
    if(authority.getId()==id)
        {
     list.remove(authority);
    }
   }
  }
  return list;
 }

页面显示如下图所示:

 

 

 

 

© 著作权归作者所有

wenwen1
粉丝 1
博文 26
码字总数 9049
作品 0
徐汇
私信 提问
0061 Form和提交的概念以及基本数据输入控件

  上节课主要讲解了PHP代码和HTML代码进行配合实现动态数据网页的方法。   这节课开始讲解前端网页如何和后端数据进行交互来实现更复杂的功能。   Form标签的概念和作用   上节课编写...

零基础学编程
2018/10/09
0
0
jquery attr prop checkbox已有checked=checked但不显示勾选问题

最近在做项目的过程中碰到了这样的一个问题:在使用bootstrap模态框的过程中,在模态框中有一个checkbox标签,一开始是为选中的,当点击触发模态框按钮,选中chcekbox时,会显示勾选,这个时...

梅气灶
2015/08/12
2.5K
1
wxPython如何绑定按钮事件,来获取配置文件,并修改不同tab页面数据,如勾选复选框、设置文本信息等

使用wxpython编写界面,含有2个.py文件,MainFrame.py和TabPage.py 在MainFrame.py中一部分pannel创建3个tab标签页,标签页内容存放在TabPage.py中,在主页面上存在按钮“Load_ini_btn”,用...

饼干
2015/07/07
697
1
使用IntelliJ IDEA开发SpringMVC网站(三)数据库配置

转载请注明出处:Gaussic。 注:在阅读本文前,请先阅读: 使用IntelliJ IDEA开发SpringMVC网站(一)开发环境 使用IntelliJ IDEA开发SpringMVC网站(二)框架配置 访问GitHub下载最新源码:...

Gaussic
2015/10/04
46.1K
99
表单防重复提交

防止表单重复提交 介绍了使用 redirect 技术防止表单提交,但是 redirect 解决不了后退到表单页面时重复提交表单,为了解决这个问题,加入了 token 的机制。如果每个 form 相关的处理方法中都...

NotFoundException
2015/09/06
314
0

没有更多内容

加载失败,请刷新页面

加载更多

75、GridFS

GridFS是MongoDB提供的用于持久化存储文件的模块,CMS使用Mongo DB存储数据,使用FGridFS可以快速集成开发。 工作原理: 在GridFS存储文件是将文件分块存储,文件会按照256KB的大小分割成多个...

lianbang_W
27分钟前
4
0
js bind 绑定this指向

本文转载于:专业的前端网站➱js bind 绑定this指向 1、示例代码 <!DOCTYPE html><html lang="zh"> <head> <meta charset="UTF-8" /> <title>bind函数绑定this指向......

前端老手
29分钟前
4
0
CentOS Linux 7上将ISO映像文件写成可启动U盘

如今,电脑基本上都支持U盘启动,所以,可以将ISO文件写到U盘上,用来启动并安装操作系统。 我想将一个CentOS Linux 7的ISO映像文件写到U盘上,在CentOS Linux 7操作系统上,执行如下命令: ...

大别阿郎
36分钟前
4
0
深入vue-公司分享ppt

组件注册 全局注册 注册组件,传入一个扩展过的构造器 Vue.component('my-component', Vue.extend({/*...*/})) 注册组件,传入一个选项对象(自动调用Vue.extend) Vue.component('my-comp...

莫西摩西
37分钟前
3
0
gitlab重置管理员密码

登录gitlab服务器 [root@localhost bin]# sudo gitlab-rails console productionLoading production environment (Rails 5.2.3)irb(main):001:0> u = User.where(email: 'admin@example.co......

King华仔o0
47分钟前
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部