doubleselect用法 显示不换行
来源:互联网 发布:linux删除临时文件 编辑:程序博客网 时间:2024/05/01 20:23
doubleselect的用法示例
在Struts2的官方网站上,有doubleselect的用法示例,但是那个例子比较简单。
<s:doubleselect label="doubleselect test2" name="menu" list="#{'fruit':'Nice Fruits', 'other':'Other Dishes'}" doubleName="dishes" doubleList="top == 'fruit' ? {'apple', 'orange'} : {'monkey', 'chicken'}" />
设置样式,使之不换行:
<style>
.nobr br{display:none}
</style>
<div class="nobr">
<s:doubleselect label="doubleselecttest2" name="menu" list="#{'fruit':'Nice Fruits', 'other':'Other Dishes'}" doubleName="dishes" doubleList="#top=='fruit'?{'apple', 'orange'}:{'monkey', 'chicken'}" theme="simple"/>
</div>
上面的例子演示了doubleselect的基本用法,但是其list和doubleList都是固定的。尤其是doublelist的切换使用了3目运算符 ? :,并没有太大的实际使用价值。在实际应用中,list往往是action返回的一个List<DataObject>,listKey和listValue来显示第一级下拉框,doubleList往往是一个Map<Integer, List<DataObject>>,其中Map中的Key值是第一级下拉框的listKey。
举个例子:
Data Object:
public class Book {
private int id;
private String name;
private int categoryId;
// getter and setter..
}
public class Category {
private int id;
private String name;
// getter and setter..
}
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,果然成功了。
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);
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..
}
- doubleselect用法 显示不换行
- html不换行显示
- <s:doubleselect />的用法
- form表单不换行显示
- 文本不换行,显示省略号
- struts2中级联菜单标签<s:doubleselect>的若干常见问题(二级菜单不显示,FreeMarker问题)
- struts2 doubleselect标签用法示例
- struts2 doubleselect用法及示例
- struts2 doubleselect标签用法示例
- struts2 doubleselect标签用法示例
- doubleselect
- 页面显示特殊字符不换行
- css 不换行显示省略号
- html div 不换行超出显示省略号
- linux printf不加换行显示问题
- 网页中文本框显示不换行
- 文本不换行,超出显示省略号
- html div 不换行超出显示省略号
- meta标签详解
- 统计学生成绩的SQL
- 耳热测吉凶法
- BPEL
- setupdll在CAB安装过程中的一些处理方法
- doubleselect用法 显示不换行
- 用ul li 制作表格样式
- memcached罢工引发的血案-博客园评论超时问题处理过程
- 对csdn陌生...55555
- java位移运算
- WCF - 大数据传输
- BEZIER程序
- struts2里面action跳action的问题
- 几款很漂亮的CSS控制的按钮样式