Struts 2 <s:select> example
A full Struts 2 example to create drop down box via <s:select>, and populate the select options via Java list and OGNL list, stored the selected values and display it in another page.
1. Action
Action class to generate and hold the selected drop down box options.
SelectAction.java
package com.mkyong.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. Result page
Render the drop down box via “<s:select>” tag, and populate the select options via Java list and OGNL list
select.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
</head>
<body>
<h1>Struts 2 drop down box example</h1>
<s:form action="resultAction" namespace="/">
<h4>
<s:select label="What's your favor search engine"
headerKey="-1" headerValue="Select Search Engines"
list="searchEngine"
name="yourSearchEngine"
value="defaultSearchEngine" />
</h4>
<h4>
<s:select label="Select a month"
headerKey="-1" headerValue="Select Month"
list="#{'1':'Jan', '2':'Feb', '3':'Mar', '4':'Apr'}"
name="yourMonth"
value="2" />
</h4>
<s:submit value="submit" name="submit" />
</s:form>
</body>
</html>result.jsp
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<body>
<h1>Struts 2 drop down box example</h1>
<h4>
Favor search engine : <s:property value="yourSearchEngine"/>
</h4>
<h4>
Selected month : <s:property value="yourMonth"/>
</h4>
</body>
</html>3. struts.xml
Link all together ~
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.devMode" value="true" />
<package name="default" namespace="/" extends="struts-default">
<action name="selectAction"
class="com.mkyong.common.action.SelectAction" method="display">
<result name="none">pages/select.jsp</result>
</action>
<action name="resultAction" class="com.mkyong.common.action.SelectAction">
<result name="success">pages/result.jsp</result>
</action>
</package>
</struts>
- 大小: 109.4 KB
- 大小: 117.3 KB
分享到:
相关推荐
Address private int aid; private String aname; public int getAid() { ... <s:select name="address" headerKey="-1" headerValue="请选择" list="lis" listKey="aid" listValue="aname" /> </s:form>
在JSP页面中,我们可以使用Struts2的标签库(例如`s:textfield`, `s:checkbox`, `s:select`等)来创建表单元素,并将这些元素与Action的属性绑定。对于集合类型,我们通常会在JSP中通过迭代器遍历并生成多个表单...
- `<s:select>` 用于创建下拉列表。 - 示例: ```xml <s:select tooltip="Chooseuser_type" label="" list="#{'free':'免费','vip':'会员'}" value="#{'free':''}" name="bean.user_type" emptyOption="true" ...
除了使用`<s:select>`标签之外,还可以直接利用Struts2的`<s:property>`标签配合原生HTML来实现同样的效果。这种方式相对灵活,但需要手动处理更多细节。 #### 代码示例 ```xml <select class="textrequired" name...
<s:select list="#{1:'aa',2:'bb',3:'cc'}" label="abc" listKey="key" listValue="value" headerKey="0" headerValue="aabb"> ``` 这个例子中,`list`属性是用哈希映射表示的,键值对分别为1对应'aa',2对应'bb',3...
<p>名称:<s:property value="name"/></p> </s:iterator> ``` - **说明**:遍历一个集合或数组,并对每个元素执行标签体内的内容。 25. **`<s:label>`** - 显示标签。 - **示例**: ```jsp <s:label value=...
而在 Struts2 中,所有的标签都被统一管理,并通过在 JSP 文件头部声明 `<%@ taglib prefix="s" uri="/struts-tags" %>` 来启用 Struts2 的标签库。这种方式简化了开发过程中的配置工作,使得开发者可以更加专注于...
<%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-----超链接,类似于html里的<a></a> 3. <s:...
在这个场景中,我们关注的是`s:iterator`标签和`s:checkbox`的使用,它们是Struts 2 中视图层(JSP)的重要组件,用于迭代数据集合并呈现复选框。在Web应用中,用户经常需要进行全选和反选的操作,这通常在管理多个...
以上只是Struts2标签库的一部分,实际使用中还有更多标签如`<s:textfield>`(文本输入框)、`<s:textarea>`(文本区域)、`<s:submit>`(提交按钮)等,每个都有其特定的用途,极大地简化了JSP页面的编写。...
例如:<s:append id="myAppendIterator"> <s:param value="%{myList1}" /> <s:param value="%{myList2}" /> <s:param value="%{myList3}" /></s:append><s:iterator value="%{#myAppendIterator}"> <s:property /></...
通过上述内容可以看出,在 Struts2 中使用 `<s:bean>` 标签可以灵活地创建各种类型的 bean,并结合 `<s:iterator>` 标签实现高效的数据循环和分页功能。这种做法不仅简化了页面开发工作,还提高了程序的可读性和可...
在上述代码中,`<s:iterator>`遍历Action中返回的`users`集合,`<s:property>`显示属性值,`<s:url>`创建链接,`<s:form>`定义表单,`<s:textfield>`为表单字段,`<s:submit>`用于提交表单。 通过Struts2的标签库,...
<%@ taglib uri="/struts-tags" prefix="s" %> 结合例子,重点掌握以下标签的用法 (1) <s:property> (2) <s:set> (3) <s:if> 、<s:elseif>、<s:else> (4) <s:iterator> (5) <s:include> (6) <s:form>、<s:hidden> (7...
除了`<s:textfield>`,Struts2还提供了多种表单标签,如`<s:password>`用于创建密码输入框,`<s:textarea>`用于创建多行文本输入框,`<s:radio>`和`<s:checkbox>`用于创建单选按钮和复选框,以及`<s:select>`用于...
本文将详细介绍`#`符号的使用方法及其应用场景,帮助读者更好地理解和掌握Struts2框架的相关知识。 #### 一、Struts2简介 Struts2是基于Struts1的基础上发展起来的一款开源Web应用框架,它使用MVC(Model-View-...
- `<s:select>`:创建下拉列表,可以从Action的属性或静态资源中获取选项。 - `<s:if>`和`<s:else>`:条件判断,类似于JSP的`<c:if>`和`<c:else>`。 - `<s:iterator>`:迭代集合,如List或Map,用于显示列表数据...
-- 这里可以使用<s:iterator> --> </s:generator> ``` - **解释**:生成数据项,并使用逗号分隔。 ##### 24. `<s:head>` 头部标签 - **用途**:在`<head>`标签内使用。 - **示例代码**: ```xml <s:head> ...
* <s:select>:下拉框 T: 无标签 U: 无标签 V: 无标签 W: 无标签 X: 无标签 Y: 无标签 Z: 无标签 这些标签都是 Struts2 框架中提供的,用于帮助开发者快速构建 Web 应用程序。
此外,Struts2表单标签还可以与其他标签结合使用,如`<s:actionerror>`、`<s:fielderror>`和`<s:property>`,以显示验证错误信息或动态显示数据。`<s:actionerror>`显示全局错误,`<s:fielderror>`显示特定字段的...