<html:options>和<html:optionsCollection>都要与<html:select>标签搭配使用
1.<html:options>标签
a.先写一个bean
package com.hsp.bean; public class Student { private String key;//学号 private String value;//姓名 public Student(String key, String value) { super(); this.key = key; this.value = value; } public String getKey() { return key; } public void setKey(String key) { this.key = key; } public String getValue() { return value; } public void setValue(String value) { this.value = value; } }
b.在jsp页面中添加如下内容
<% ArrayList list = new ArrayList(); list.add(new Student("201004070117","show value1")); list.add(new Student("201004070118","show value2")); list.add(new Student("201004070119","show value3")); list.add(new Student("201004070120","show value4")); pageContext.setAttribute("valuelist",list); %> <html:form action="/test.do"> <html:select property="studentCode"> //property要与ActionForm中的属性匹配 <%-- collection是集合的名字,存在于pageContext, request, session,application中 key和value与student Bean 中的属性名字一样--%> <html:options collection="valueslist" property="key" labelProperty="value"/> </html:select> </html:form>
2.<html:optionsCollection>
a.编写一个ActionForm
package com.hsp.form; import java.util.List; import javax.servlet.http.HttpServletRequest; import org.apache.struts.action.ActionError; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import com.hsp.bean.Student; public class RegisterForm extends ActionForm{ private String username; private String password; private List<Student> areas; private String area; private int age; public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } //简单的数据验证 @Override public ActionErrors validate(ActionMapping mapping, HttpServletRequest request) { ActionErrors actionErrors = new ActionErrors(); //ActionErrors继承了ActionMessages if("".equals(username)){ actionErrors.add("errorUsername", new ActionError("error.username.blank")); } if("".equals(password)){ actionErrors.add("errorPassword", new ActionError("error.password.blank")); } if(0 == age){ actionErrors.add("errorAge", new ActionError("error.age.blank")); } return actionErrors; } public List<Student> getAreas() { return areas; } public void setAreas(List<Student> areas) { this.areas = areas; } public String getArea() { return area; } public void setArea(String area) { this.area = area; } }
b.在action中添加
public class RegisterAction extends Action { @Override public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception { RegisterForm registerForm = (RegisterForm)form; List<Student> areas = new ArrayList<Student>(); areas.add(new Student("hubei", "1" )); areas.add(new Student("wuhan", "2")); areas.add(new Student("zhejiang","3")); registerForm.setAreas(areas); return mapping.findForward("success"); } }
c.在jsp页面中添加
<%-- <html:select name="registerForm" property="areatest" value="area">这样可以使areatest的默认值为registerForm对象中的area属性值 --%> <html:select name="registerForm" property="area"> <%--property是name所指定的对象registerForm中属性。如果name是一个集合,那么可以省略property的配置 --%> <html:optionsCollection name="registerForm" property="areas" value="value" label="key"/> </html:select>
相关推荐
1. **基本HTML元素标签**:这些标签用于生成常见的HTML元素,如`<html>`、`<base>`和`<img>`。例如,`<html:html>`标签可以设置HTML文档的语言环境,而`<html:base>`则可以设置页面的基础URL。`<html:img>`用于插入...
以下是对`html:select`标签的详细解释和使用方法: ### 基本结构 `html:select`标签的基本结构如下: ```jsp <html:select property="beanProperty"> <html:options collection="collectionName" property=...
### 关于 `<html:select>`、`<html:option>`、`<html:options>` 和 `<html:optionsCollection>` 的详细解析 #### `<html:select>` 标签 `<html:select>` 是一个用于生成 HTML `<select>` 元素的标签。在 Struts 1.x...
5. `<html:radio>`和`<html:checkbox>`:分别用于创建单选按钮和复选框,通常配合`<html:group>`使用,以便于处理一组相关的选择项。`name`属性定义了这些按钮或复选框共享的名称,`value`属性指定了提交时的值。 6...
6. `<html:select>`、`<html:option>`和`<html:optionsCollection>`标签:`<html:select>`创建下拉选择框`<select>`,`<html:option>`定义选择项,`<html:optionsCollection>`则可以方便地从ActionForm的集合属性中...
##### 2.8 `<html:optionsCollection>` 标签 - **功能**:用于从集合中动态填充下拉列表。 - **示例**: ```xml <html:select property="city"> <html:optionsCollection value="cities" label="name" value="id...
- `<html:option>`、`<html:options>`、`<html:optionsCollection>`:配合`<html:select>`使用,定义下拉列表中的选项。 - `<html:submit>`、`<html:button>`:创建提交按钮和普通按钮。 - `<html:reset>`、`...
6. `<html:select>`, `<html:option>`和`<html:optionsCollection>`标签:用于创建下拉选择框。例如: ```jsp <html:select property="country"> <html:option value="">Select a country</html:option> ...
- `<html:select>`,`<html:option>`和`<html:optionsCollection>`:用于创建下拉列表。 4. **数据校验** Struts标签库还可以与Validator框架结合,进行客户端和服务器端的数据校验。例如,可以使用`<html:form>`...
Struts1.0版本虽然现在已经较为老旧,但对于理解MVC架构和标签库的使用仍然是很有帮助的。本资料主要集中在Struts1.0的标签库学习,下面我们将详细探讨Struts标签库及其在实际开发中的应用。 首先,我们来看"Struts...
5. `<html:select>`、`<html:option>`和`<html:optionsCollection>`:这些标签用于创建下拉选择框。`<html:select>`定义选择框,`<html:option>`添加单个选项,而`<html:optionsCollection>`则可以从ActionForm的...
此外,Struts标签库还包括`<html:option>`和`<html:optionsCollection>`等标签,它们分别用于在`<html:select>`中定义选项,以及从集合或列表中动态生成选项。 总结来说,Struts标签极大地简化了JSP页面的编写,...
- `<html:select>`、`<html:option>` 和 `<html:optionsCollection>`:用于创建下拉列表。 使用Struts标签库的好处在于: - **代码复用**:标签可以多次重复使用,减少代码量,提高开发效率。 - **增强可读性**:...
- **配置Struts标签库**:使用<taglib>元素引入Struts提供的标签库。 ##### 2.配置struts-config.xml - `<struts-config>`:根元素,包含其他所有配置项。 - `<data-sources>`:定义数据库连接池信息。 - `<form-...
- `<html:select>`、`<html:option>` 和 `<html:optionsCollection>`: 用于创建下拉列表,可以绑定到ActionForm的属性。 3. **其他标签库**: - **bean标签库**: 用于操作JavaBean对象,如`<bean:define>`、`<bean...
6. **`<html:select>`、`<html:option>`和`<html:optionsCollection>`标签**:用于创建下拉选择列表,`<html:option>`用于定义选项,`<html:optionsCollection>`则可以从数据库或其他集合中动态生成选项。...
Struts标签库提供了多种表单元素的标签,例如`<html:form>`、`<html:text>`、`<html:hidden>`、`<html:submit>`等,这些标签可以方便地创建和管理表单数据。 - **`<html:form>`**: 用于定义表单的结构。 - **`...
然后,在JSP页面上使用`<logic:iterate>`和`<html:link>`标签来生成带有参数的链接。 **DTO:** ```java Map<String, String> map = new HashMap<>(); map.put("name1", value1); dto.setMap(map); List<DTO> lst = ...
`<html:select>`定义选择框,`<html:option>`定义选项,而`<html:optionsCollection>`则可以基于集合动态生成选项。 9. `html:checkbox`和`html:radio`标签:分别用于创建复选框和单选按钮。 10. `tiles`标签:...
本文档和实例将深入探讨`<optionsCollection>`的使用方法及其在实际开发中的应用。 首先,让我们了解`<optionsCollection>`标签的基本语法和属性。`<optionsCollection>`是Struts2框架中`<s:select>`或`<s:checkbox...