Struts2标签系列之<s:iterator> 迭代 一行两列2011-11-04 9:29假如有jsp页面要实现一个列表信息,格式如下:
第1条信息 第2条信息
第3条信息 第4条信息
第5条信息 第6条信息
第7条信息 第8条信息
搜索过别的方法,很多人运用jsp代码写入页面来进行循环判断。其实用struts2自带的标签可以实现同样效果,利用iterator标签进行循环,里面用if标签判断何时加入tr标签的开头和结尾,下面实现了两列信息列表的情况:
因为iterator标签有如下方法:
boolean isEven() 当前迭代元素索引是否为偶数; eg:count.even
boolean isOdd() 当前迭代元素索引是否为奇数; eg:count.odd
boolean isLast() 是否为最后一条元素; eg:count.last
boolean isFirst() 是否为第一条元素。 eg:count.fast
有以上元素,那么判断何时加入tr就非常方便。
假如是多列(两列以上),那么我们就可以使用如下方法:
int getIndex() 返回当前迭代元素的索引 eg:count.index
用它来计算你何时需要加入tr标签的开头和结尾,无非就是if判断的表达式复杂一些,方法还是一样的。
例子:
这个是一行4列的情况
<table border="1">
<s:iterator value="xxx" status="status" >
<s:if "#status.index % 4 == 0">
<tr>
</s:if>
<td>
<s:property value="输出数据" />
</td>
<s:if "#status.index % 4 == 3 || #status.last">
</tr>
</s:if>
分享到:
相关推荐
2. <s:table></s:table>-----表格 3. <s:text name=""></s:text>-----I18n文本信息 4. <s:textarea></s:textarea>-----文本域输入框 5. <s:textfield></s:textfield>-----文本输入框 6. <s:token></s:token>----...
通过以上分析可知,利用Struts2的`<s:iterator>`和`<s:set>`标签,我们可以很方便地实现对列表数据的迭代显示及数值求和功能。这种方法不仅简化了后端代码逻辑,也使得前端页面更加灵活和动态。这对于处理大量数据时...
在Struts2中,`<s:iterator>`标签是最常用的迭代标签,用于遍历集合或数组。例如,你可以使用它来显示数据库查询结果: ```jsp <s:iterator value="list"> <p>Id: <s:property value="id" />, Name: <s:property ...
`<s:iterator>` - 迭代标签 迭代集合中的元素。 ```xml <s:iterator value="items" status="status"> Item #<s:property value="#status.index"/>: <s:property value="name"/> </s:iterator> ``` #### 28. `<s:...
`<s:generator>` 标签配合`<s:iterator>`使用,用于生成迭代所需的初始数据。 ### 18. `<s:head>` 标签 `<s:head>` 标签用于包含HTML头部信息,如CSS和JS文件的引用。 ### 19. `<s:hidden>` 标签 `<s:hidden>` ...
在Struts2中,不再像Struts1.x那样将标签库分为html、bean、logic和tiles等类别,而是统一使用一个`<s>`前缀的标签库,只需在JSP页面头部引入`<%@ taglib prefix="s" uri="/struts-tags" %>`即可使用所有标签。...
#### `<s:iterator>` 标签 用于循环遍历集合或数组,可以设置迭代次数和当前索引变量。 #### `<s:label>` 标签 生成HTML的`<label>`标签,用于表单元素的标记,提高可访问性。 #### `<s:merge>` 标签 用于合并...
它可以结合`<s:iterator>`标签使用,以方便地处理动态生成的数据集。 #### 示例代码解析: ```jsp <s:generator val="'aaa,bbb,ccc,ddd'" separator="," count="2"> <s:iterator> <s:property/> </s:iterator> ...
虽然 Struts 2 不再推荐使用 Struts 1.x 的标签,但在某些情况下仍然可能见到 `<s:bean>` 标签。此标签用于访问 JavaBean 的属性值。例如:`<s:bean name="user" property="firstName"/>`,这里的 `name` 指定了 ...
`<s:iterator>` 标签 - **用途**:遍历集合。 - **示例**: ```xml <s:iterator value="itemsList"> <s:property value="item.name"/> </s:iterator> ``` ##### 28. `<s:label>` 标签 - **用途**:创建标签。...
`<s:iterator>` - 迭代标签 - 用于遍历集合,显示集合中的每个元素。 #### 25. `<s:label>` - 标签标签 - 创建标签,可与表单控件关联。 #### 26. `<s:merge>` - 合并标签 - 用于合并两个集合或列表,支持去重...
此外,Struts2的标签库还提供了其他一些增强功能,例如条件判断标签`<s:if>`和循环标签`<s:foreach>`,可以用来根据特定条件展示数据或者对集合进行更复杂的迭代操作。例如,你可以使用`<s:if>`来隐藏某些属性值,...
其标签库包括s:标签(如<s:iterator>、<s:if>)、field标签(如<s:textfield>、<s:textarea>)和display标签(如<display:table>),使得开发者能够更方便地操作Action中的属性和处理表单提交。 5. JSF(JavaServer...
`<s:iterator>`标签可以迭代任何集合类型的数据,包括数组。我们可以先遍历行,再遍历列,将每一天的数据展示出来。例如: ```jsp <table> <s:iterator value="calendar" var="week"> <tr> <s:iterator value=...
<li><s:if test="%{#pageNumber == currentPage}"><strong>${pageNumber}</strong></s:if><s:else><a href="<s:url action='pagination'><s:param name='currentPage'>${pageNumber}</s:param></s:url>">${...
Struts2标签详解,尤其是`Iterator`标签,是Java Web开发中的重要概念,它在Struts2框架中扮演着数据循环展示的关键角色。Struts2是Apache软件基金会下的一个开源项目,它提供了一种用于构建MVC(模型-视图-控制器)...
例如,使用迭代标签`<s:iterator>`和条件标签`<s:if>`: ```jsp <table> <s:iterator value="userPageBean.list"> <tr> <td><s:property value="username" /></td> <!-- 其他列 --> </tr> </s:iterator> </...
例如,可以使用Struts2的s:iterator标签和s:url标签来实现这一功能。 ```jsp <%@ taglib prefix="s" uri="/struts-tags" %> ... <table> <s:iterator value="pagedData"> <!-- 数据展示 --> </s:iterator> </...
在给定的示例代码中,我们看到了一个通过 JSP 和 Struts2(`<s:iterator>` 标签)生成的动态表格。表格中的每一行代表一个产品信息条目,包括工厂名称、供应商名称等。为了优化显示效果,当连续两行的工厂名称相同时...
<artifactId>struts2-core</artifactId> <version>2.5.x</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>8.0.x</version> </...