action里定义了mapjsp页面怎样循环出key值

解决方案 »

  1.   

    <s:terate value="map" state="stat">
      <s:property value="key"/>:
      <s:property value="value"/>
    </s:iterate>用此标签的前提是要把map绑定到作用域中!
      

  2.   

    我想取得key的值然后和S{其他的值}比较 能行否?
      

  3.   

    <s:terate value="map" state="stat">
      <s:property value="key"/>:
      <s:property value="value"/>
       <s:if test="key==${xx}> 主要是想要这个 谢谢各位了
       
    </s:iterate>
      

  4.   

     不知道你要怎么比较,应该要进行类型转换以后再比较吧。key都知道的,value值就不用说怎么取了吧
      

  5.   

    <s:if test="key==${xx}/> 取不出来啊
      

  6.   

    Set set=map.ketSet();
    //map 的key就是一个set集合,然后通过迭代器遍历啊!
      

  7.   

    sorry,你试试下面这个能出来吗?我这没法试<s:terate value="map.keys" id="mykey">
      <s:property value="#mykey"/>:
    </s:iterate>
      

  8.   

    action中:request.setParameter("map",map);
    jsp:
    <s:terate value="map" state="stat">
      <s:property value="key"/>:
      <s:property value="value"/>
    </s:iterate>
      

  9.   

    struts2 可以直接用来显示action 中的属性值,所以就想出了以下方式解决了这个问题,具体代码如下: action    public String execute() throws Exception ...{
            if(this.getUserName().equals("chen") && this.getPwd().equals("chen")) ...{
                ActionContext.getContext().getSession().put("userName", this.getUserName());
                User user = new User();
                user.setName("a");
                user.setCode("A");
                map.put(1, user);
                user = new User();
                user.setName("b");
                user.setCode("B");
                map.put(2, user);
                return SUCCESS;
            }
            return ERROR;
        }以下是 jsp <%@taglib uri="/struts-tags" prefix="s"%>
        <table>
        <s:iterator value="map.keySet()" id="id">
        <tr><td>
            <s:property value="#id"/></td>
            <s:iterator value="map.get(#id)">
                <td><s:property value="name"/></td>
                <td><s:property value="code"/></td>
            </s:iterator>
        </tr>
        </s:iterator>
        </table>