我接触struts 差不多快一个月了,所以很多问题还是不明白,趁着 刚下班回家之前发个帖咨询下,希望回到家之后能看到有人回复,在此 先感谢1,首先 单选
这是我添加页面里的: <s:select theme="simple" name="content.contentPriority" list="%{#{'00':'高', '01':'中','10':'低'}}" headerKey="key" headerValue="请选择优先级" /> 一个很简单的设置,也能显示,但是现在 要求是要 修改这个下拉框的值,也就是说在点“修改后”所弹出的修改页面里 这个下拉框所显示的是这个 content的 优先级,怎么实现!2,是多选 ,也是1同样的问题<s:optiontransferselect  
list="productMap"
id="leftProduct"
listKey="key"
listValue="value"
multiple="true"
size="12"
allowUpDownOnRight="false"
allowUpDownOnLeft="false"
allowSelectAll="false"
cssStyle="width:100px" 
doubleCssStyle="width:100px"
doubleId="rightproduct"
doubleList="{}"
doubleName="products"
doubleMultiple="true"
doubleSize="12"
/>其中 productMap 是在这个action里 getProductMap()实现的 hashMap类,里面的内容是全部的product的id 及其name
在添加页面也是正常的,可是在编辑页面 这个多选框 仍然是 添加页面里 显示的东西,所以应该怎么设置?还有种方式,这个是完全正常的 可惜 我看不大明白
<c:set var="leftList" value="${availableRoles}" scope="request"/>                 <s:set name="rightList" value="user.roleList" scope="request"/>                 <c:import url="/WEB-INF/pages/pickList.jsp">
<c:param name="listCount" value="1"/>
                    
<c:param name="leftId" value="availableRoles"/>
                    
<c:param name="rightId" value="userRoles"/>
                
</c:import>这种方式 我不会搞,因为前面的availableRoles这个东西是在一个listener里设置的,availableRoles在第一次初始化的时候就装进去了,而这个代码 我还没看明白,这个在修改的时候 左右选框 都是前面已经选好后的值因为没看明白,所以 想用第一种方式 也去实现 第二种一样的功能,求解怎么做

解决方案 »

  1.   

    没搞过Struts2.。。标签跟Struts1.X有差距。。
       友情UP一下。。
      

  2.   

    现在的问题原因是我 搞明白了  就是不知道咋个处理:在添加的时候 list里的map要get,而我在get里是 map是添加全部的内容,所以增加页面是正常显示的在修改的时候 原先的list的map get的时候,又会重新添加全部内容,而第二种方式 listener是 初始化的时候添加一次 就好了,当修改的时候 不会重新添加全部内容说的有些乱,
      

  3.   

    在修改的时候 原先的list的map get的时候,又会重新添加全部内容,你在修改的时候重新添加map或list。。
      或重新写个修改方法
      

  4.   

    你的意思是不是修改的时候,下拉框的值是你选择的那个列的值
    如果是这样的话,你在action里面,把这个字段赋值成你想要显示的值就行了,不过你下拉框的name和action里的字段要对应。
    我自己都看不懂自己写的说明了,囧~~~
      

  5.   

    你的意思是初始化吧?
    给你点代码,希望对你有帮助
    <tr>
        <td nowrap class="TableData">上级部门:</td>
          <td class="TableData">
            <s:select name="parentId" value="id " theme="simple"
                      list="@com.zhkj.oa.web.function.DeptSelectDataFunction@allDepts(0)"
      headerKey="0" headerValue="无" 
      listKey="id" listValue="name"></s:select>
          </td>
       </tr>
    list中数据格式是
    public class SelectData { private int id;
    private String name;

    public int getId() {
    return id;
    }
    public void setId(int id) {
    this.id = id;
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }
    }