在Struts框架中,s标签能够自动读取值栈中相匹配的字段信息。
用法:
1、下拉列表的选项固定且简单
<s:select id="company" name="company" class="ComboType" list="#{'1':'移动','2':'联通','3':'电信'}"></s:select>
2、当下拉列表使用的集合是后台数据库所查到的时候
<s:select id="adaptRules" name="adaptRules" class="adaptrules" list="adaptruleslist" listKey="id" listValue="name"></s:select>
后台在Action方法中的List处理如下:首先查找到对应对象集合 然后放入request中 在jsp页面获取
其中jsp中的ListKey就是对象中id属性,listValue就是对象中的name属性;
List< Adaptrules> adaptruleslist=adaptrulesService.FindAdaptrules();
request.setAttribute("adaptruleslist", adaptruleslist);
Adaptrules对象有属性如下:
private Integer id;
private String nane;
3、当下拉列表使用后台Map的时候可以使用如下方法
<s:select id="mode" name="mode" onchange="opCommonHide(this)" class="ComMode" list="#request.modeMap" listKey="key" listValue="value" value="#request.mode"></s:select>
list获取后台request中的Map属性 map的key将作为下拉列表的value,map的值将作为下拉列表展示的值。 如果要设置默认选择值则如图多传一位值mode用于默认选择