首页 > 代码库 > struts2中<s:select>标签的使用

struts2中<s:select>标签的使用

1 静态生成

<s:select name="user.sex" list="#{‘0‘:‘男‘,‘1‘:‘女‘}" label="性别" headerKey="" headerValue="http://www.mamicode.com/请选择性别"></s:select>

注解:这里从页面来静态(也就是在页面中写死啦)构造下拉选项,关键点是list="#{‘0‘:‘男‘,‘1‘:‘女‘}" 通过它实现的select的两个option 。headerKey指定缺省的选项“value”,headerValue指定缺省的选项“text”。


2 action传递list过来

<s:select label="用户" name="user" list="userList" listKey="id" listValue="http://www.mamicode.com/name" />

注解:这里通过一个list类型的对象来动态生成一个下拉列表。list="userList"表示action里有一个list<User>类型的userList属性。listKey="id"表示当前option的value从userList里的当前User对象的id属性取值。listValue="http://www.mamicode.com/name"表示当前option的text从userList里的当前User对象的name属性取值。

 

摘自:http://czxddlcs2007.blog.163.com/blog/static/41630879201221993214552/

 

struts2的select标签中,常用属性:

(1)list:创建列表的可迭代数据源, 必设项(list必须有值,如果没值则必须设置headerKey, headerValue)。如果该列表是一个Map(key, value), 那么Map的主键将作为选项(<option>)的"value"属性, 而该主键对应的值作为选项的文本内容.是必须设置的选项,如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。

(2)headerKey:设置列表的题头主键值. 一定不能为空值! "‘-1‘"或"‘‘"是正确的取值, ""是错误的取值。

(3)headerValue:列表的题头选项值。

(4)listKey:列表数据源中元素对象的属性, 用于获取选项的值,对应于select标签中的value。

(5)listValue:表数据源中元素对象的属性, 用于获取选项的文本内容,对应于select标签中的option。

(6)name:元素的名字。

 

附表:

名称 必填 缺省值类型描述
emptyOption false           false            Boolean 是否在题头选项后面添加一个空的(--)选项
headerKey false   Object/String        设置列表的题头主键值. 一定不能为空值! "‘-1‘"或"‘‘"是正确的取值, ""是错误的取值.
headerValue false           Object/String 列表的题头选项值
multiple false   Object/String 创建一个多选列表. 如果value属性指定了一个数组(正确的元素类型), 那么将预先选中数组中指定的多个选项.
size false   Integer 该组件列表框的大小 (显示元素的个数)
list true   Object/String 创建列表的可迭代数据源. 如果该列表是一个Map(key, value), 那么Map的主键将作为选项(<option>)的"value"属性, 而该主键对应的值作为选项的文本内容.
listKey false   Object/String 列表数据源中元素对象的属性, 用于获取选项的值
listValue false   Object/String 列表数据源中元素对象的属性, 用于获取选项的文本内容
theme false   Object/String 输出元素时使用的主题(theme)(不使用缺省的)
template false   Object/String 输出元素时使用的模板(template)(不使用缺省的)
cssClass false   Object/String 输出元素时的class属性
cssStyle false   Object/String 输出元素时的css样式定义(译者注:就是html元素的style属性)
title false   Object/String 在输出元素时设置html属性title
disabled false   Object/String 在输出元素时设置html属性disabled
label false   Object/String 用于输出一个元素对应的label的表达式
labelPosition false left Object/String 不赞成使用.
labelposition false   Object/String 定义元素标签的位置(top/left)
requiredposition false   Object/String 定义required属性输出的位置(left|right)
name false   Object/String 元素的名字
required false false Boolean 如果设置为true, 在输出标签时将显示出此字段是必须输入的(译者注:如果使用默认模板,将会标示为"*")
tabindex false   Object/String 在输出元素时设置html属性tabindex
value false   Object/String 预设input元素的value属性.
onclick false   Object/String 在输出元素时设置html属性onclick
ondblclick false   Object/String 在输出元素时设置html属性ondblclick
onmousedown false   Object/String 在输出元素时设置html属性onmousedown
onmouseup false   Object/String 在输出元素时设置html属性onmouseup
onmouseover false   Object/String 在输出元素时设置html属性onmouseover
onmousemove false   Object/String 在输出元素时设置html属性onmousemove
onmouseout false   Object/String 在输出元素时设置html属性onmouseout
onfocus false   Object/String 在输出元素时设置html属性onfocus
onblur false   Object/String 在输出元素时设置html属性onblur
onkeypress              false   Object/String 在输出元素时设置html属性onkeypress
onkeydown false   Object/String 在输出元素时设置html属性onkeydown
onkeyup false   Object/String 在输出元素时设置html属性onkeyup
onselect false   Object/String 在输出元素时设置html属性onselect
onchange false   Object/String 在输出元素时设置html属性onchange
tooltip false   String 设置元素的tooltip属性(译者注:tooltip为工具栏提示)
tooltipConfig false   String 设置tooltip属性的配置
id false   Object/String id是定位元素时使用的. 对于UI和表单标签它会被用作HTML的id属性

 

原文链接:http://www.cnblogs.com/bmbm/archive/2011/12/21/2342253.html

struts2中<s:select>标签的使用