iterator
描述:
用于遍历集合(java.util.Collection)或枚举值(java.util.Iterator)。
参数:
名称 |
必需 |
默认 |
类型 |
描述 |
status |
否 |
|
String |
如果设置此参数,一个IteratorStatus的实例将会压入每个遍历的堆栈 |
value |
否 |
|
Object/String |
要遍历的可枚举的(iteratable)数据源,或者将放入新列表(List)的对象 |
id |
否 |
|
Object/String |
用来标识元素的id。在UI和表单中为HTML的id属性 |
例子:
<%@ page contentType="text/html; charset=UTF-8" %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%
List list = new ArrayList();
list.add("Max");
list.add("Scott");
list.add("Jeffry");
list.add("Joe");
list.add("Kelvin");
request.setAttribute("names", list);
%>
<html>
<head>
<title>Iterator</title>
</head>
<body>
<h3>Names: </h3>
<!--
1、此处的空property元素用于获得当前iterator的值
2、status被设成stuts,在iterator的里面就可以通过#stuts取得IteratorStatus的对象。IteratorStatus类包含当前序号信息,如是否第一个或最后一个,是否为奇数序号。这些信息在我们做格式化的时候,显得非常有用。
-->
<ol>
<s:iterator value="#request.names" status="stuts">
<s:if test="#stuts.odd == true">
<li>White <s:property /></li>
</s:if>
<s:else>
<li style="background-color:gray"><s:property /></li>
</s:else>
</s:iterator>
</ol>
</body>
</html>
在struts2中,iterator标签是很好用的,但也要注意一下.举个例子,
如果要在每行中只显示两条记录,这个经常用到的例子来的了,可以这样用:
<table width="800px" align="center">
<tr>
<s:iterator value="songs" status="st">
<td>
<input
type="checkbox" name="songIds" id="<s:property value='id'/>" value="<s:property value='id'/>"><label for="<s:property value='id'/>" class="checkboxLabel"><s:property value="name"/>
</td>
<s:if test="#st.modulus(2)==0">
<s:if test="#st.last">
</tr></s:if>
<s:else>
</tr><tr></s:else>
</s:if>
</s:iterator>
</table>
这里无非就是要注意 <s:if test="#st.modulus(2)==0">
来判断整除2是否为0,(也可以用<s:if test="#st.getIndex()%2==0)
并且注意如下的使用 #st.last,判断是否到了最后一条记录,并且注意:
iterator标签有如下方法:
boolean isEven() 当前迭代元素索引是否为偶数;
boolean isOdd() 当前迭代元素索引是否为奇数;
boolean isLast() 是否为最后一条元素;
boolean isFirst() 是否为第一条元素。
有以上元素,那么判断何时加入tr就非常方便。
分享到:
相关推荐
### Struts2中Iterator标签的深入解析与应用 在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于在JSP页面上循环遍历集合数据,如列表(List)、数组、Map等。它允许开发者以一种动态且灵活的方式展示...
在Struts2框架中,`<s:iterator>`标签是一个非常强大的工具,用于遍历集合或数组中的元素,尤其在处理列表数据时极为有用。通过本文档提供的代码示例,我们将深入探讨`<s:iterator>`标签的使用方法及其与不同数据...
在Struts2中,`iterator`标签是用于遍历集合数据的重要工具,它可以用来迭代Map、List和数组等数据结构,以便在视图层进行展示。本篇文章将深入探讨`iterator`标签在遍历这些数据类型时的具体用法。 首先,我们来看...
本文将深入探讨如何使用Struts2中的`<s:iterator>`标签来遍历二维数组,并通过实例代码来具体说明其用法。 ### Struts2 Iterator标签 #### 1. 基本概念 `<s:iterator>`是Struts2的一个非常强大的标签,主要用于...
- 在JSP页面中使用标签,如`s:textfield name="username"`绑定Action的username属性。 - 配置Struts2的配置文件(struts.xml或struts.properties),定义Action和结果。 通过以上介绍,我们可以看出Struts2标签库...
下面,我们将详细介绍 Struts2 标签库的使用。 4.1 通用标签 通用标签用来控制页面的执行过程,并从 Action 或值堆栈中取得数据。这些标签可以分为控制标签、数据标签和其他标签。 控制标签用来控制程序的执行,...
使用Struts2标签,首先需要在JSP页面中引入Struts2的标签库: ```jsp <%@ taglib prefix="s" uri="/struts-tags" %> ``` 然后,可以像使用HTML标签一样使用Struts2标签,例如创建一个文本字段: ```jsp ...
Struts2标签库是Java开发Web应用程序时常用的一个强大工具,尤其在构建MVC(Model-View-Controller)架构的应用程序中发挥着重要作用。Struts2框架提供了丰富的自定义标签库,极大地简化了视图层的开发,使得开发者...
除了预定义的标签外,Struts2还允许开发者自定义标签,这需要创建一个继承自`org.apache.struts2.views.jsp.TagSupport`的Java类,并在JSP页面中使用`<s:tag>`进行调用。 五、标签库的扩展性 Struts2的标签库不仅...
在这个场景中,我们关注的是`s:iterator`标签和`s:checkbox`的使用,它们是Struts 2 中视图层(JSP)的重要组件,用于迭代数据集合并呈现复选框。在Web应用中,用户经常需要进行全选和反选的操作,这通常在管理多个...
Struts 2 标签库(文档手册) Tags-API-CLSW-JSP <%@ taglib prefix="s" uri="/struts-tags" %> 就能使用struts2.0的标签库 下面就介绍每个标签的具体应用实例说明:按字母排列 A: 1. 2. <s:a href=""></s:a>-...
下面将详细介绍Struts2中的部分核心标签及其用法。 A. `<s:a>` 和 `<s:action>`: - `<s:a href="">` 标签用于创建超链接,它可以绑定到一个Action,使得链接具有动态性。例如,`<s:a href="myAction.action">Click ...
在JSP页面中,使用Struts2的`iterator`标签遍历`timereportinfo_view`时,我们需要进行两层嵌套。外层`iterator`遍历`LinkedHashMap`的键值对,内层`iterator`则遍历每个日期对应的`List`。下面是如何正确使用`...
下面将详细解释如何在Struts2中设置循环标签的ID以及其工作原理。 首先,`s:iterator`标签的基本结构如下: ```jsp <s:iterator value="collectionName" status="statusVariable"> <!-- 迭代体内容 --> </s:...
在Struts2中,标签库是其核心组件之一,极大地简化了视图层的开发,使得开发者可以更加专注于业务逻辑而不是繁琐的HTML代码。本篇文章将深入探讨Struts2的标签库,并通过具体案例进行讲解。 首先,Struts2标签库...
在Struts2中,这通常通过资源 bundle 文件实现,例如`messages.properties`和`messages_zh_CN.properties`,分别用于存储默认语言和中文语言的文本。在Action或者JSP页面中,可以通过`<s:text>`标签来引用这些资源,...
在提供的文档中,应该会有详细步骤和实例展示如何配置Struts2的标签库,如何在Action类中定义属性和方法,以及如何在JSP页面中使用这些标签。通过学习和实践,开发者可以更好地理解和掌握Struts2框架,提升Web应用的...
本篇文章主要关注Struts2中的常用标签,这些标签大大简化了Web开发中的一些常见任务。 首先,我们要明白Struts2标签库与Struts1.x的不同之处。在Struts1.x中,标签库按照功能划分为HTML、Tiles、Logic和Bean等几个...
在Struts2中,标签库是其核心特性之一,它们为开发者提供了便利的方式来构建动态用户界面,无需深入HTML和JavaScript的底层细节。在本篇中,我们将深入探讨Struts2的标签应用及其在实际开发中的使用。 首先,了解...
在Struts2中,使用了一系列的标签库来增强JSP页面的功能,使得开发者可以更方便地实现业务逻辑与视图的分离,提高代码的可读性和可维护性。本篇文章将详细介绍Struts2中的各种标签及其应用。 1. **s:form标签**:这...