Struts2系列—Form Tags(checkbox/checkboxlist )
網(wǎng)絡(luò)上關(guān)于Struts2方面資料不少,之所以再重復(fù)一些關(guān)于Struts2的知識(shí),只是因?yàn)楸救苏趯W(xué)習(xí)Struts2,而且在學(xué)習(xí)的途中也遇見了不少
的問題,由于沒有學(xué)過Struts2以前的版本,學(xué)習(xí)途中也是比較的痛苦,在此僅想記錄下我的學(xué)習(xí)歷程。
如果你對(duì)這個(gè)方面有深入研究,懇請(qǐng)你的指點(diǎn);如果你也是初學(xué)者,希望這系列的博文對(duì)你有所幫助。
Struts2中的checkbox和HTML中的復(fù)選框<input type="checkbox">差不多,而要實(shí)現(xiàn)復(fù)選框中的選項(xiàng)從服務(wù)器端獲得,Struts2中的checkbox不提供這個(gè)功能,而是靠另一個(gè)標(biāo)簽checkboxlist實(shí)現(xiàn)的,看下面代碼:
checkbox.jsp:

再看checkboxlist.jsp:

其實(shí)其他的標(biāo)簽大體類似,重在動(dòng)手,我有時(shí)也是老遇見錯(cuò)誤,久了就Ok了。
如果你對(duì)這個(gè)方面有深入研究,懇請(qǐng)你的指點(diǎn);如果你也是初學(xué)者,希望這系列的博文對(duì)你有所幫助。
Struts2中的checkbox和HTML中的復(fù)選框<input type="checkbox">差不多,而要實(shí)現(xiàn)復(fù)選框中的選項(xiàng)從服務(wù)器端獲得,Struts2中的checkbox不提供這個(gè)功能,而是靠另一個(gè)標(biāo)簽checkboxlist實(shí)現(xiàn)的,看下面代碼:
checkbox.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<s:checkbox label="足球" name="checkbox" value="football" fieldValue="true" />
<!-- 上面一行代碼等同下面一行HTML代碼,屬性都很簡(jiǎn)單不再介紹 -->
<input type="checkbox" name="checkbox" value="football"/>足球
</body>
</html>
效果圖:<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
</head>
<body>
<s:checkbox label="足球" name="checkbox" value="football" fieldValue="true" />
<!-- 上面一行代碼等同下面一行HTML代碼,屬性都很簡(jiǎn)單不再介紹 -->
<input type="checkbox" name="checkbox" value="football"/>足球
</body>
</html>

再看checkboxlist.jsp:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>struts2</title>
</head>
<body>
<s:checkboxlist list="foodList" name="food" label="food"/>
<br>
<s:checkboxlist list="hobbyList" name="hobby" label="hobby"/>
</body>
</html>
增加list集合里面映射類CheckboxlistAction.java:<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>struts2</title>
</head>
<body>
<s:checkboxlist list="foodList" name="food" label="food"/>
<br>
<s:checkboxlist list="hobbyList" name="hobby" label="hobby"/>
</body>
</html>
package com.kalman03.action;
import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
/**
* @FileName CheckboxlistAction.java
*
* @Author kalman03
*
*/
public class CheckboxlistAction extends ActionSupport {
private List foodList;
private List hobbyList;
public List getFoodList() {
return foodList;
}
public List getHobbyList() {
return hobbyList;
}
@Override
public String execute() throws Exception {
foodList = new ArrayList<String>();
foodList.add("milk");
foodList.add("rice");
foodList.add("noodles");
hobbyList = new ArrayList<String>();
hobbyList.add("football");
hobbyList.add("basketball");
hobbyList.add("volleyball ");
return SUCCESS;
}
}
在struts.xml里面配置好映射,即增加下列代碼:import java.util.ArrayList;
import java.util.List;
import com.opensymphony.xwork2.ActionSupport;
/**
* @FileName CheckboxlistAction.java
*
* @Author kalman03
*
*/
public class CheckboxlistAction extends ActionSupport {
private List foodList;
private List hobbyList;
public List getFoodList() {
return foodList;
}
public List getHobbyList() {
return hobbyList;
}
@Override
public String execute() throws Exception {
foodList = new ArrayList<String>();
foodList.add("milk");
foodList.add("rice");
foodList.add("noodles");
hobbyList = new ArrayList<String>();
hobbyList.add("football");
hobbyList.add("basketball");
hobbyList.add("volleyball ");
return SUCCESS;
}
}
<action name="checkboxlisttag" class="com.kalman03.action.CheckboxlistAction">
<result>/checkboxlist.jsp</result>
</action>
ok,在瀏覽器中輸入:http://localhost:8080/test/checkboxlisttag.action,可以看到結(jié)果:<result>/checkboxlist.jsp</result>
</action>

其實(shí)其他的標(biāo)簽大體類似,重在動(dòng)手,我有時(shí)也是老遇見錯(cuò)誤,久了就Ok了。
posted on 2008-10-29 22:51 kalman03 閱讀(4042) 評(píng)論(4) 編輯 收藏 所屬分類: Struts2