我有一个对象是dorm,它有id,power(布尔型表示是否购电)等属性,
我存在了action的map中,在jsp中显示的时候我想有个下拉单选框来先把它自己的默认值显示出来,
power为true时显示是,为false时显示否,我用<s:select>标签来显示,
且我还要可以对其改变,再传到另一个action中,选择是传true,选择否传false.请求帮助!!!

解决方案 »

  1.   

    map用法有点不同
      要用: 比如你存的是iterms = '${maps}' var='map'
    取的时候是
      map.key, map.value
    试试
      

  2.   

    不好意思本人水平有限,看不太懂
    我把部分原码贴出来你看怎么改?
    action:
    Map session=ActionContext.getContext().getSession();
    session.put("searchResult", dorm);//dorm是一个对象
    ------------------
    上面的action转到下面的页面
    jsp:
    <s:iterator value="#session.searchResult" status="st">
    <s:form action="updateOrDeleteDorm" theme="simple" method="post">
    <s:hidden name="dorm.id" value="%{id}"></s:hidden>
    <tr>
    <td>
    <s:select name="dorm.power" list="#session.searchResult" value="%{excellent}" listValue="{'是','否'}" listKey="{true,false}"></s:select>//这里不对
    </td>
    <td>
    <s:textfield name="dorm.excellent" value="%{excellent}">
    </s:textfield>
    </td>
    <td>
    <s:submit value="更改" name="submit"></s:submit>
    </td>
    <td>
    <s:submit value="删除" name="submit"></s:submit>
    </td>
    </s:form>
    </s:iterator>
      

  3.   

    listKey和listValue应该都是字段名
    比如 listKey="userid" listValue="username"
    listKey是要写入的字段
    listValue是显示在页面上的字段