`
dawuafang
  • 浏览: 1108546 次
文章分类
社区版块
存档分类
最新评论

struts2标签:doubleselect学习心得标签

 
阅读更多

举个例子:
Data Object:

public class Book {
private int id;
private String name;
private int categoryId;


}

public class Category {
private int id;
private String name;


}

JSP:
<s:doubleselect list="categoryList" listKey="id" listValue="name"
doubleName="bookId" doubleList="bookMap.get(top.id)" doubleListKey="id" doubleListValue="name" theme="simple"/>

此处要注意的是top的用法,开始我以为top就是指代list的值,所以使用的是bookMap.get(top),但是二级下拉框一直是空白,后来我突然想到说不定top是一个Category实例呢,尝试了一下top.id,果然成功了。需要着重注意的是dobuleList的获值方法,id为List属性循环的ListKey的值。

Action:

public class DemoAction {
private Map<Integer, List<Book>> bookMap;
private List<Category> categoryList;

public String execute() throws Exception {
categoryList = new ArrayList<Cateogry>();

Category category;
category = new Category();
category.setId(1);
category.setName("Fiction");
categoryList.add(category);
category = new Category();
category.setId(2);
category.setName("Java");
categoryList.add(category);

bookMap = new HashMap<Integer, List<Book>>();

List<Book> bookList = new ArrayList<Book>();
Book book;
book = new Book();
book.setId(1);//该出的1为Category的id,根据Category的id获得对应的book
book.setName("Harry Porter");
book.setCategoryId(1);
bookList.add(book);

book = new Book();
book.setId(2);
book.setName("Nightmare");
book.setCategoryId(1);
bookList.add(book);

bookMap.put(1, bookList);

bookList = new ArrayList<Book>();
book = new Book();
book.setId(3);
book.setName("Thinking in Java");
book.setCategoryId(2);
bookList.add(book);
book = new Book();
book.setId(4);
book.setName("Head First Design Patterns");
book.setCategoryId(2);
bookList.add(book);

bookMap.put(2, bookList);


return SUCCESS;
}

// getter and setter..
}


名  字
数据类型
默 认 值
说  明

doubleCssClass
String
用来呈现第二个select元素的CSS类

doubleCssStyle
String
用来呈现第二个select元素的CSS样式

doubleDisabled
boolean
false
是否禁用第二个select元素

doubleEmptyOption
false
是否要在第二个select元素里插入一个空白选项

doubleHeaderKey
String
第二个select元素的标题的键

doubleHeaderValue
String
第二个select元素的标题的值

doubleId
String
第二个select元素的标识符

doubleList*
String
用来充当第二个select元素的选项来源的可遍历对象

doubleListKey
String
为第二个select元素提供选项值的对象属性

doubleListValue
String
为第二个select元素提供选项行标的对象属性

doubleMultiple
boolean
false
是否允许用户在第二个select元素里进行“多选多”选择

doubleName*
String
第二个select元素的名字

doubleSize
integer
在第二个select元素里需要显示的选项的个数

doubleValue
String
第二个select元素的值

emptyOption
boolean
false
是否要在第一个select元素里插入一个空白选项

formName
String
包含这个组件的表单的名字

headerKey
String
第一个select元素里的标题的键

headerValue
第一个select元素里的标题的值

list
用来充当第一个select元素的选项来源的可遍历对象

listKey
String
为第一个select元素提供选项值的对象属性

listValue
String
为第一个select元素提供选项行标的对象属性

multiple
boolean
false
是否允许用户在第一个select元素里进行“多选多”选择

size
integer
在第一个select元素里需要显示的选项的个数

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics