<s:select>默认选中项

	<s:select
	      list=""
	      name=""
	      value=""
	      headerKey=""
	      headerValue=""
	      listKey=""
	      listValue=""
	/>

 

(1)其中 list是必须具备的属性 list中可以存储map list set类型的数据

 

list 属性:通常是在action中定义的,必须是一个可以迭代的源,如为一个List, Map, Set等。如果是一个Map,那么map的key就对应于select标签中的value,map中的value就对应于select标签中的 option。而如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。

 

(2)如果list为空headKey 和headValue不能为空.listKey和listValue:listKey即对应于select标签中的value, listValue即对应于select标签中的option

 

(3)name属性:即是表单中select的名称。

 

下面具体解释下各个属性的含义。

 

headerValue : 默认值value
headerKey :    默认name
list : 源数据 (可以在action方法里从数据库获取list)
name : 被选数据存放的位置(这里我方在对象obj的属性值userName中<需在action中定义该对象>)
listKey : 下拉选项的name
listValue : 下拉选项的value
value : 默认值

1.第一个例子:

<s:select list="{'aa','bb','cc'}" theme="simple" headerKey="00" headerValue="00"></s:select>

 2.第二个例子:

<s:select list="#{1:'aa',2:'bb',3:'cc'}"  label="abc" listKey="key" listValue="value"  headerKey="0" headerValue="aabb">

3.第三个例子:

<%
java.util.HashMap map = new java.util.LinkedHashMap();
map.put(1,"aaa");
map.put(2,"bbb");
map.put(3,"ccc");
request.setAttribute("map",map);
request.setAttribute("aa","2");
%>
<s:select list="#request.map"  label="abc" listKey="key" listValue="value"
 value="#request.aa"  headerKey="0" headerValue="aabb"></
s:select
>

 headerKey headerValue 为设置缺省值
4.第四个例子

public class Program implements Serializable {
    /**    serialVersionUID */
    private static final long serialVersionUID = 1L;
    private int programid;
    private String programName;
    public int getProgramid() {
        return programid;
    }
    public void setProgramid(int programid) {
        this.programid = programid;
    }
        public String getProgramName() {
        return programName;
    }
    public void setProgramName(String programName) {
        this.programName = programName;
    }
}

在 xxx extends  extends ActionSupport {
    private  List<Program> programs ;
       public List<Program> getPrograms() {
        return programs;
    }
    public void setPrograms(List<Program> programs) {
            this.programs = programs;
    }
}

 

在jsp页面
      <s:select list="programs "  listValue="programName " listKey="programid "  name="program" id="program"
             headerKey="0l" headerValue="    "   value="bean.programid "
             ></s:select>  

 

 list的值为在action里面的list,listValue的值为<option value="xxx">value</option>对应bean里面的字段programName
listKey的值为<option value="xxx",对应bean里面的字段programid,value的值为设定select被选中的值,s:select 会自动在 bean选中 key对应的值

 

如果可以在jsp页面上写死的话,可以如下:
<s:select list="#{1:'男',2:'女'}" listKey="key" listValue="value" value="2" />
该代码运行结果:默认显示的是“女”。

如果默认项是从后台传到前台的,可以如下:
jsp:
<s:select list="#{'1':'男','2':'女'}" name="sex"/>
action:
private String sex;
sex属性有get/set方法。
在业务方法中设置sex = "2";select会默认选中。

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值