Struts2 <s:select>下拉框例子
這裏創建一個Web工程:strut2selectdropdown,來演示在多個複選框如何設置的默認值,整個項目的結構如下圖所示:
在Struts2,可以使用 <s:select> 標籤來創建一個HTML下拉框。
<s:select label="What's your favor search engine"
headerKey="-1" headerValue="Select Search Engines"
list="searchEngine"
name="yourSearchEngine" />
產生下面的HTML代碼...
其語法不需要太多解釋,只不過是「headerKey」和「headerValue」。「headerKey」是一個在下拉列表中項用來表示鍵,而「headerValue」是在下拉列表中的項目表示值。
要自動選擇下拉框中的默認值,看看這篇文章:自動選擇Struts2下拉框的值
Struts 2 <s:select> 示例
一個通過<s:select>創建下拉框完整的Struts2的例子,和填充通過Java列表,OGNL列表中選擇選項,保存所選的值,並在另一頁顯示。
1. 動作 - Action
Action類來生成並按住選定的下拉框中選項。
SelectAction.java
package com.yiibai.common.action;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
public class SelectAction extends ActionSupport{
private List<String> searchEngine;
private String yourSearchEngine;
private String yourMonth;
public String getYourMonth() {
return yourMonth;
}
public void setYourMonth(String yourMonth) {
this.yourMonth = yourMonth;
}
public List<String> getSearchEngine() {
return searchEngine;
}
public void setSearchEngine(List<String> searchEngine) {
this.searchEngine = searchEngine;
}
public String getYourSearchEngine() {
return yourSearchEngine;
}
public void setYourSearchEngine(String yourSearchEngine) {
this.yourSearchEngine = yourSearchEngine;
}
public String getDefaultSearchEngine() {
return "yahoo.com";
}
public SelectAction(){
searchEngine = new ArrayList<String>();
searchEngine.add("google.com");
searchEngine.add("bing.com");
searchEngine.add("yahoo.com");
searchEngine.add("baidu.com");
}
public String execute() {
return SUCCESS;
}
public String display() {
return NONE;
}
}
2. 結果頁面
渲染下拉框中通過「<s:select>」標籤,並填充通過Java列表,OGNL列表中的選擇選項
select.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
Struts 2 drop down box example
<s:form action="resultAction" namespace="/">
<s:submit value="submit" name="submit" />
result.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
Struts 2 drop down box example
Favor search engine :
Selected month :
3. struts.xml
5. 運行實例
http://localhost:8080/strut2selectdropdown/selectAction.action
http://localhost:8080/strut2selectdropdown/resultAction.action