struts2怎样设置<s:select>默认选中项

解决方案 »

  1.   

    请参考下面代码:
    <s:select list="#{1:'第一项',2:'第二项'}"  listKey="key" listValue="value" value="2" />
    该代码运行结果:默认显示的是“第二项”。
      

  2.   

    struts2的select标签中,常用的有以下几个属性:
    (1)struts2中的select 标签中,必须设置的属性只有一个,即是list。
    (2)select标签的list中必须有值,不然会报错。如果没有值,可以加上headerKey, headerValue,这样就可以通过了。即使list中有值,我们也通常会加上headerKey, headerValue,即列表中显示的第一个选项。注意,headerKey不可以为空,不可以为-1。
    (3)list属性:通常是在action中定义的,必须是一个可以迭代的源,如为一个List, Map, Set等。如果是一个Map,那么map的key就对应于select标签中的value,map中的value就对应于select标签中的 option。而如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。
    (4)listKey和 listValue:listKey即对应于select标签中的value, listValue即对应于select标签中的option。
    (5)name属性:即是表单中select的名称。 
      

  3.   

    jsp:<s:select list="#{'1':'男','2':'女'}" name="sex"/>action:private String sex;
    sex属性有get/set方法。在业务方法中设置sex = "2";select会默认选中。
      

  4.   

    没给一楼分,不公平啊,要不是5楼提醒,我都忽略掉了...
    呵呵,一楼的方法可以直接在jsp页面设置默认值,把<s:select >中的value设置为默认值就可以了。
    jsp中直接写的话有个问题就是写死了。3楼的方法其实是一个意思,不过是在Action中设置值,动态的,一般应该是这么用;