Struts2标签之select的使用方法

原创 2015年07月08日 17:49:25

一、select表单的实现的例子

0x00 HTML代码实现select表单

首先我们来看一下使用纯粹的HTML代码实现最简单select表单,该如何实现,代码如下:

<select name="selectName">
    <option value="chelsea">切尔西</option>
    <option value="mu">曼联</option>
    ...
</select>


0x01 Struts2标签实现select选择菜单

当我们使用struts标签实现一个简单的select表单时,该如何实现,代码如下:

<s:set var="teamList" value="#{'chelsea':'切尔西','mu':'曼联'}"></s:set>
<s:select name="" list="teamList" headerKey="" headerValue="选择你喜欢的球队"></s:select>


0x02 使用Action中传递的列表生成select菜单

上面的例子所实现的select表单都是使用静态数据来完成的,然而我们在工作中需要使用动态的数据完成select表单的展示,该如何实现,代码如下:

Action代码:

public void TeamAction(){
    private List<Team> teamList; // 需要在页面中显示的list

    // 此处省略teamList的getter方法

    // 此处省略teamList的setter方法
}

页面代码:

<s:select list="teamList"  <!--Action中传过来的需要进行显示的list -->
      listKey="team_id"  <!-- listKey相当于option中的value属性 -->
      listValue="team_name"  <!-- listKey相当与每个option的文本内容 -->
      name="team.team_id"  <!-- select的name属性 -->
      value="chelsea">  <!-- select的默认选项,相当于在对应的option中设置selected="selected" -->
</s:select>

以上代码便是实现使用动态数据完成select表单的基本代码的demo,在这个过程中只使用了几个必须要用到的基本的标签属性。下面让我们看一下完整的select标签的属性。



二、select标签属性详解

0x00 常用属性

  • list:创建列表的可迭代数据源, 必设项(list必须有值,如果没值则必须设置headerKey, headerValue)。如果该列表是一个Map(key, value), 那么Map的主键将作为选项()的”value”属性, 而该主键对应的值作为选项的文本内容.是必须设置的选项,如果是一个List或者是一个Set,那么可以通过listKey和listValue指定。
  • headerKey:设置列表的题头主键值. 一定不能为空值! “’-1’”或”””是正确的取值, “”是错误的取值。
  • headerValue:列表的题头选项值。
  • listKey:列表数据源中元素对象的属性, 用于获取选项的值,对应于select标签中的value。
  • listValue:表数据源中元素对象的属性, 用于获取选项的文本内容,对应于select标签中的option。
  • 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的主键将作为选项()的”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
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属性
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属性

struts2中s:select标签的使用

1.第一个例子:2.第二个例子:3.第三个例子:java.util.HashMap map = new java.util.LinkedHashMap();map.put(1,"aaa");map.p...
  • moliqin
  • moliqin
  • 2009年01月11日 19:23
  • 133595

Struts2 select标签如何获取action中传来的值进行option选择.txt

  • 2012年03月13日 21:49
  • 574B
  • 下载

strust2 标签大全

2009-10-30struts2.x 标签库 及 用法大全 关键字: struts2.x 标签 库 用法 大全 struts2 一、 url标签  简介 url标签用于生成一个URL地址,可以通...
  • chenyi19880918
  • chenyi19880918
  • 2011年04月30日 11:29
  • 850

struts2——s:doubleselect标签!!!

doubleselect:1)里面。2) 4)一级列表需要一个list,而二级列表需要一个map。5)top代码一级列表当前选中的项。map.get(top.deptno)代表根据部门编号找到map里...
  • zq9017197
  • zq9017197
  • 2010年10月21日 10:34
  • 3576

struts2 select标签 下拉列表

在写项目的时候需要用到下拉列表,遇到点问题,谷哥后总结如下: select里面有: headerValue : 默认值value headerKey :    默认name list : 源数...
  • funi16
  • funi16
  • 2012年09月13日 11:51
  • 13639

struts2中s:select标签从前后台的取值

1.第一种:   2.第二种: 3.第三种(从数据库读数据) action中: public class ServiceRelease { private Provi...
  • u012230055
  • u012230055
  • 2014年10月31日 21:16
  • 450

struts2标签使用css的方法

原文地址:点击打开链接 加上这句,在action时跳转时不出效果 改成 "/> 就可以了。一定是css文件定位有问题。 如何解决,不用写http://localhost:...
  • u010921701
  • u010921701
  • 2017年02月17日 16:10
  • 879

struts2下拉框实例

name="obj.userName" listKey="userName" listValue="userName" value="%{obj.userName.trim()}"/>  上面就...
  • Athenaer
  • Athenaer
  • 2012年08月08日 10:03
  • 3991

Struts2中 s:select 标签相关使用

struts s:select 标签相关使用
  • Xgx120413
  • Xgx120413
  • 2016年04月09日 11:53
  • 2086

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

需要将后台传过来的userlist变成一个下拉菜单,于是想到使用,但设置属性设置了好久,在此记下来。 JSP代码: label:显示在下拉框前面的文字; name:下拉框的名字,在后台用ge...
  • ll328062201
  • ll328062201
  • 2014年12月16日 14:04
  • 2750
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Struts2标签之select的使用方法
举报原因:
原因补充:

(最多只允许输入30个字)