一 视图
<%@ page contentType="text/html; charset=GBK" language="java" errorPage="" %>
<%@taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>使用s:updownselect生成可上下移动选项的下拉选择框</title>
<s:head/>
</head>
<body>
<h3>使用s:updownselect生成可上下移动选项的下拉选择框</h3>
<s:form>
<!-- 使用简单集合来生成可上下移动选项的下拉选择框 -->
<s:updownselect name="a" label="请选择您喜欢的图书"
labelposition="top"
moveUpLabel="向上移动"
list="{'疯狂Java讲义'
, '轻量级Java EE企业应用实战'
, '疯狂iOS讲义'}"/>
<!-- 使用简单Map对象来生成可上下移动选项的下拉选择框
且使用emptyOption="true"增加一个空选项-->
<s:updownselect name="b" label="请选择您想选择出版日期"
labelposition="top"
moveDownLabel="向下移动"
list="#{'疯狂Java讲义':'2008年9月'
,'轻量级Java EE企业应用实战':'2008月12月'
,'疯狂iOS讲义':'2014年1月'}"
listKey="key"
emptyOption="true"
listValue="value"/>
<s:bean name="org.crazyit.app.service.BookService" id="bs"/>
<!-- 使用集合里放多个JavaBean实例来可上下移动选项的生成下拉选择框 -->
<s:updownselect name="c" label="请选择您喜欢的图书的作者"
labelposition="top" selectAllLabel="全部选择" multiple="true"
list="#bs.books"
listKey="author"
listValue="name"/>
</s:form>
</body>
</html>
二 业务类
package org.crazyit.app.service;
import org.crazyit.app.dto.*;
public class BookService
{
public Book[] getBooks()
{
return new Book[]
{
new Book("疯狂Java讲义","李刚"),
new Book("轻量级Java EE企业应用实战","李刚"),
new Book("疯狂iOS讲义","李刚"),
new Book("疯狂Ajax讲义","李刚")
};
}
}
三 实体类
package org.crazyit.app.dto;
public class Book
{
private String name;
private String author;
// 无参数的构造器
public Book()
{
}
// 初始化全部成员变量的构造器
public Book(String name , String author)
{
this.name = name;
this.author = author;
}
// name的setter和getter方法
public void setName(String name)
{
this.name = name;
}
public String getName()
{
return this.name;
}
// author的setter和getter方法
public void setAuthor(String author)
{
this.author = author;
}
public String getAuthor()
{
return this.author;
}
}
四 测试