碰到个后台传Map到前台通过key取值的问题

zhouzehan 2014-08-11 12:27:00
action里面传的
Map<String, String> rpMap = new HashMap<String, String>();

key值1 2 3 4 5 6...
jsp页面
<s:property value="#request.rpMap['']"/>

填入key>9才能显示出value值,这是为什么啊 求个回答解释开导一下
...全文
8692 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhouzehan 2014-08-12
  • 打赏
  • 举报
回复
还是用迭代判断key值显示value这么做了,谢谢大家了
zhouzehan 2014-08-12
  • 打赏
  • 举报
回复
引用 8 楼 zy353003874 的回复:
把request去掉试一试呢?你加到request域里面没有哟
问题只是
<s:property value="#request.rpMap['']"/>
这样取值 填1-9找不到值10和以后的都有,不知道是什么原因,直接打印MAP也可以显示出全部的KEY和VALUE
zy_think123 2014-08-11
  • 打赏
  • 举报
回复
把request去掉试一试呢?你加到request域里面没有哟
wyx100 2014-08-11
  • 打赏
  • 举报
回复
引用 3 楼 zhouzehan 的回复:
[quote=引用 1 楼 zy353003874 的回复:] 你把它存到request域里面去了吗? 如果存了,那么你有对应的get,set方法吗? 如果有了,map中有值吗? 如果有了,我给你举一个例子:


    <% 
    	Map map = new HashMap();
    	map.put("a","aaaaxxx");
    	map.put("b","bbbb");
    	map.put("c","cccc");
    	
    	map.put("1","aaaa1111");
    	
    	request.setAttribute("map",map);
    %>
    
    ${map.a }
    ${map["1"] }
所以你应该这样写: <s:property value="#request.rpMap['1']"/>
这个,我的问题就是能读出来值 但是里面填写1到9取不出来值 10+以后的都可以取值出来 很疑惑[/quote]顶
zhouzehan 2014-08-11
  • 打赏
  • 举报
回复
引用 4 楼 zy353003874 的回复:
[quote=引用 3 楼 zhouzehan 的回复:] [quote=引用 1 楼 zy353003874 的回复:] 你把它存到request域里面去了吗? 如果存了,那么你有对应的get,set方法吗? 如果有了,map中有值吗? 如果有了,我给你举一个例子:


    <% 
    	Map map = new HashMap();
    	map.put("a","aaaaxxx");
    	map.put("b","bbbb");
    	map.put("c","cccc");
    	
    	map.put("1","aaaa1111");
    	
    	request.setAttribute("map",map);
    %>
    
    ${map.a }
    ${map["1"] }
所以你应该这样写: <s:property value="#request.rpMap['1']"/>
这个,我的问题就是能读出来值 但是里面填写1到9取不出来值 10+以后的都可以取值出来 很疑惑[/quote] 你看看你的10之前对应的value有值吗? 你通过 ${map.a } ${map["1"] } 这种方法试一试,还有把你的代码贴出来[/quote] 嗯 用 ${map["1"] }取可以取到 就是用struts标签不行
zhouzehan 2014-08-11
  • 打赏
  • 举报
回复
引用 2 楼 rui888 的回复:
应该不会,你key 有没有空格之类的l
我在页面用打印
<s:iterator value="#request.rpMap" id="rp">
		<s:property value="#rp.key"/>---<s:property value="#rp.value"/></br>
</s:iterator>
19---Dy/TREM≥99% 17---Nd/TREM 99.0-99.9% 18---Tb/TREM≥99.9% 15---Ce/TREM≥99.0% 16---Pr/TREM 96.0-99.0% 13---(Nd2O3+Pr6O11)/TREO≥75.0% 14---La/TREM≥99.0% 11---Er2O3/TREO 99.5-99.9% 12---Y2O3/TREO 99.995-99.999% 21---Ce/TREM≥65.0% TREM≥98.5% 20---Y/TREM 99.9-99.95% 22---Pr/TREM 20-25% Nd/TREM 75-80% TREM≥98.5% 23---TREM≥99.0% 24---TREM≥99.0% Nd/TREM≥15% 25---Dy80% 3---CeO2/TREO 99.5-99.9% 2---La2O3/TREO 99.5-99.9% 10---Dy2O3/TREO 99.5-99.9% 1---REO 42.0-45.0% 7---Eu2O3/TREO 99.95-99.99% 6---Sm2O3/TREO 99.5-99.9% 5---Nd2O3/TREO 99.0-99.9% 4---Pr6O11/TREO 99.0-99.9% 9---Tb4O7/TREO 99.95-99.99% 8---Gd2O3/TREO 99.5-99.9% 都是应该有值 但是就是1到9直接取不能取到
zy_think123 2014-08-11
  • 打赏
  • 举报
回复
引用 3 楼 zhouzehan 的回复:
[quote=引用 1 楼 zy353003874 的回复:] 你把它存到request域里面去了吗? 如果存了,那么你有对应的get,set方法吗? 如果有了,map中有值吗? 如果有了,我给你举一个例子:


    <% 
    	Map map = new HashMap();
    	map.put("a","aaaaxxx");
    	map.put("b","bbbb");
    	map.put("c","cccc");
    	
    	map.put("1","aaaa1111");
    	
    	request.setAttribute("map",map);
    %>
    
    ${map.a }
    ${map["1"] }
所以你应该这样写: <s:property value="#request.rpMap['1']"/>
这个,我的问题就是能读出来值 但是里面填写1到9取不出来值 10+以后的都可以取值出来 很疑惑[/quote] 你看看你的10之前对应的value有值吗? 你通过 ${map.a } ${map["1"] } 这种方法试一试,还有把你的代码贴出来
zhouzehan 2014-08-11
  • 打赏
  • 举报
回复
引用 1 楼 zy353003874 的回复:
你把它存到request域里面去了吗? 如果存了,那么你有对应的get,set方法吗? 如果有了,map中有值吗? 如果有了,我给你举一个例子:


    <% 
    	Map map = new HashMap();
    	map.put("a","aaaaxxx");
    	map.put("b","bbbb");
    	map.put("c","cccc");
    	
    	map.put("1","aaaa1111");
    	
    	request.setAttribute("map",map);
    %>
    
    ${map.a }
    ${map["1"] }
所以你应该这样写: <s:property value="#request.rpMap['1']"/>
这个,我的问题就是能读出来值 但是里面填写1到9取不出来值 10+以后的都可以取值出来 很疑惑
tony4geek 2014-08-11
  • 打赏
  • 举报
回复
应该不会,你key 有没有空格之类的l
zy_think123 2014-08-11
  • 打赏
  • 举报
回复
你把它存到request域里面去了吗? 如果存了,那么你有对应的get,set方法吗? 如果有了,map中有值吗? 如果有了,我给你举一个例子:


    <% 
    	Map map = new HashMap();
    	map.put("a","aaaaxxx");
    	map.put("b","bbbb");
    	map.put("c","cccc");
    	
    	map.put("1","aaaa1111");
    	
    	request.setAttribute("map",map);
    %>
    
    ${map.a }
    ${map["1"] }
所以你应该这样写: <s:property value="#request.rpMap['1']"/>

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧