0
我知道这已被问过,但所提供的解决方案似乎不适用于我的目的。弹簧形式:选择所选值
我目前正在开发一个web应用程序,我目前正在处理用户配置文件页面。我所做的是,当用户访问他/她的个人资料时,他/她将能够管理他/她的个人资料。
我有一个弹簧窗体:选择框填充从控制器传递的RolesObject列表和GroupsObject列表。该对象由一个id和名称字段组成。我想要的是当窗体:选择加载时,它将从列表中选择用户的当前角色ID和组ID。
控制器
public ModelAndView viewProfile(parameters) {
ModelAndView mav = new ModelAndView();
mav.setViewName("viewProfile");
...
List<RolesObject> roles = rolesService.getRolesList();
List<GroupsObject> groups = groupsService.getGroupsList();
Map<String, List> map = new HashMap<String, List>();
map.put("roles", roles);
map.put("groups", groups);
mav.addObject("map", map);
return mav;
视图
<form:select path="role_id" id="role_id" cssClass="form-control" cssStyle="width: 100%;" value="${current.getRole_id()}" required="required">
<c:forEach var="role" items="${map.roles}">
<form:option value="${role.getId()}" label="${role.getName()}" />
</c:forEach>
</form:select>
<form:select path="group_id" id="group_id" cssClass="form-control" cssStyle="width: 100%;" value="${current.getGroup_id()}" required="required">
<c:forEach var="group" items="${map.groups}">
<form:option value="${group.getId()}" label="${group.getName()}" />
</c:forEach>
</form:select>
我的问题是列表填充,但它不选择默认值。
比方说,我的角色值 值= 1,标签= role_1 值= 2,标签= role_2
和用户的当前角色是role_2其中有2的ID,选择形式负载时,它不会自动加载role_2,而是仍然将role_1显示为所选值
我试过但没有在我的情况下工作。 – ReiSchneider