jsp页面中:
<script type="text/javascript">
function updateUsers() {document.userList.action="${pageContext.request.contextPath}/editUserAllCommit";
document.userList.submit();
}
</script>
</head>
<body>
用户列表 <input type="button" value="批量修改" οnclick="updateUsers()"/>
<br/>
<form name="userList" action="" method="post" enctype="multipart/form-data">
<table width="100%" border="1">
<tr>
<th>姓名</th>
<th>性别</th>
<th>地址</th>
<th>生日</th>
</tr>
<c:forEach items="${userList }" var="user" varStatus="s">
<tr>
<td><input type="text" name=" userList[${s.index }].userName" value="${user.userName }"/></td>
<td><input type="text" name=" userList[${s.index }].sex" value="${user.sex }"/></td>
<td><input type="text" name=" userList[${s.index }].address" value="${user.address }"/></td>
<td>
<input type="text" name=" userList[${s.index }].birthday" value="<fmt:formatDate value='${user.birthday }' pattern='yyyy-MM-dd'/>"/>
</td>
</tr>
</c:forEach>
</table>
</form>
java代码:
//进入批量修改的页面
@RequestMapping(value="/editUserQuery", method={RequestMethod.GET,RequestMethod.POST})
public @ResponseBody ModelAndView editUserQuery(@RequestParam(value="id", required=false, defaultValue="-1") Integer id) {
ModelAndView modelAndView = new ModelAndView("editUserQuery");
List<User> list = userServiceImpl.findUsers("xiao");
modelAndView.addObject("userList", list);
return modelAndView;
}
//批量修改 不能直接用list接收页面传过来的对象,必须用包装类接收,UserCustom 类中有List<User> userList属性和get/set方法。
@RequestMapping("/editUserAllCommit")
public String editUserAllCommit(UserCustom userCustom) {
//... 批量修改
return "redirect:findUsers";
}