struts2 设置select选中
欢迎技术交流。 QQ:138986722
首先利用Struts2的<s:select>标签:
<s:select list="#request.groupList" name="customerGroup" theme="simple" listKey="id" listValue="name" value="#request.customerGroup" headerKey="" headerValue="--请选择--"> </s:select>
list属性:就是Action中从后台获取的list选项集合的值。
name属性:可以利用它来在后台获取用户所选取的值。
theme属性:这个属性是去掉s标签原有样式的意思、所有的s标签都通吃。
listKey 属性跟listValue属性:listKey就是option选项的value值、listValue就是option选项的Text值。这里值得注意 的是、你list集合中存放的实体的属性、要与listKey/value对应起来。比如、我的bean里面
class groupListClass{ private int id ; 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; } private String name; }
这样、id、name跟页面listKey/Value的值对应起来。
value属性:就是当前控件的value、也就是当前控件选中的值。这个属性可以用来控制查询、记得在后台Action中声明属性、和get/set方法。也可以直接存值request范围。
headerKey属性:option选项默认值(value)。
headerValue属性:option选项默认文本(Text)。
部分后台代码:
String customerGroup = getRequest().getParameter("customerGroup"); List gr=new ArrayList(); gr = //获取list数据 getRequest().setAttribute("groupList", gr); getRequest().setAttribute("customerGroup", customerGroup);
也可以直接在前台赋值使用select标签:
<s:select list="#{0:'未知',1:'男',2:'女'}" name="sexCustomer" theme="simple" listKey="key" listValue="value" value="#request.sexCustomer" headerKey="" headerValue="--请选择--"></s:select>
0,1,2代表的是option选项的value值。后面的是Text值。
记得在后台获取完毕之后存request范围一下、
String sexCustomer = getRequest().getParameter("sexCustomer"); getRequest().setAttribute("sexCustomer", sexCustomer);
当然、你也可以直接使用Struts2的属性驱动、或者模型驱动。