日期:2014-05-18  浏览次数:20702 次

jsp页面如何获得struts2中map的值
在action中组建了一个map,它的value是boolean类型,想把这个值传给页面的checkbox,
value="CHBStatus.get(i)"这样显示
但这个i是通过对象获得的,最终写出来value="CHBStatus.get(role.roleid)"
控制台提示 for input String;
现在能不能把role.roleid的值赋给map的key,能的话该怎么样写,不能的话有没有其它的解决办法

------解决方案--------------------
Map的原型是Map<String,Integer>形式的么?
------解决方案--------------------
楼主,可以把role.roleid的值赋给map的key的,完全没有问题。
 “for input String”这个错误是发生在哪句代码里呢?
能拿出来看看吗?
------解决方案--------------------
<s:iterator value="#request.myMap.keySet()" id="id">
 <s:property value="#id" />
<s:property value="#request.myMap.get(#id)" />
</s:iterator>
------解决方案--------------------


java.util.HashMap map = new java.util.LinkedHashMap(); 
map.put(1,"超级管理员"); 
map.put(2,"管理员"); 
map.put(3,"普通用户"); 
request.setAttribute("map",map); 
request.setAttribute("aa","2");    // 这里可以role.roleid

<s:select list="#request.map" name="heroName" label="权限" value="#request.aa"  ></s:select> 

这样就可以,楼主试试。