【发布时间】:2016-04-07 15:14:53
【问题描述】:
我已经在我发现的类似情况下尝试了所有解决方案,但没有运气。
我的jsp。
<s:checkboxlist list = "positionsMap"
listKey = "%{key.toString()}"
listValue = "%{value}"
name = "selectedPositions"
value = "positionName"
label = "Position" />
positionsMap是一个Hashmap,键为positionId,值为positionName。
selectedPositions 是一个填充了预检查位置的列表。用调试器测试并从数据库中获取正确的值。
positions 是一个带有 id 和 name 的列表。
所以我的问题是如何显示预先选中的存储在selectedPositions 中的复选框。
我得到的结果是所有复选框都未选中。
如果有什么不清楚的请问我。
提前致谢!
更多信息:
private Object1 object= new Object1();
private List<Position> positionList = new ArrayList<>();
private List<Position> selectedPositions = new ArrayList<Position>();
private String positionName = new String();
private Map<Long,String> positionsMap = new HashMap<Long, String>();
//getters, setters
@Inject
transient ObjectDAO objectDAO;
@Inject
transient PositionDAO positionDAO;
public String edit() {
HttpServletRequest request = (HttpServletRequest) ActionContext.getContext().get(ServletActionContext.HTTP_REQUEST);
object= objectDAO.listById(Long.parseLong(request.getParameter("id")));
positionList = positionDAO.listPositions();
selectedPositions = object.getPositions();
for (int i = 0; i < positionList.size(); i++) {
Position row = (Position) positionList.get(i);
Long id = row.getPositionId();
positionName = row.getPositionName();
positionsMap.put(id, positionName);
}
return SUCCESS;
}
【问题讨论】:
标签: java jsp struts2 checkboxlist