struts2 counter循环标签的使用:

struts2随提供了循环控制标签<s:iterator/>,,使用起来也比较方便,但在具体的应用中,也有不方便之处,他没有像struts1的<c:foreach/>标签,提供了begin、end等属性,支持自增变量的循环。遇到这种问题怎么解决??struts2提供了<s:bean/>标签,且提供了一个bean类:org.apache.struts2.util.Counter,该类中有first、last等属性,可用使用它获取自增值,如下:

<s:bean name="org.apache.struts2.util.Counter" id="counter">
<s:param name="first" value="1" />
<s:param name="last" value="10" />
<s:iterator>
<s:property/>
</s:iterator>
</s:bean>

其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current-1

例1:分页中,select自增计数的控制
<select name="page"
onchange="javascript:window.location='newslist.jsp?page='+this.value">
<s:bean name="org.apache.struts2.util.Counter">
<s:param name="first" value="1" />
<s:param name="last" value="pageCount" />
<s:iterator>
<option value="<s:property />"
<s:if test="%{page==(current-1)}">selected="selected"</s:if>>
<s:property />
</option>
</s:iterator>
</s:bean>
</select>

例2:

<s:bean name="org.apache.struts2.util.Counter" id="counter">
                        <s:param name="first" value="1"></s:param>
                        <s:param name="last" value="question.number"></s:param>
                        <s:iterator>
                            <tr>
                                <td width="30%" bgcolor="#e6ecf9" align="right">
                                    选项&nbsp;<s:property/>
                                </td>
                                <td>
                                    <s:textfield name="question.items" cssClass="test" size="70%" bgcolor="#e6ecf9"></s:textfield>
                                </td>
                            </tr>
                        </s:iterator>
</s:bean>

原文出自http://huibin.javaeye.com/blog/674789

Struts2标签实现for循环(可以固定次数)

关键字: struts2标签实现for循环固定次数

Java代码 
  1. <s:bean name="org.apache.struts2.util.Counter" id="counter">
  2. <s:param name="first" value="1" />
  3. <s:param name="last" value="10" />
  4. <s:iterator>
  5. counter:<s:property value="curent-1"/>
  6. </s:iterator>
  7. </s:bean>

其中first属性指定循环起始值,last指定循环终止值,其它相关属性可以查看org.apache.struts2.util.Counter类源码。在下面迭代器中输入循环的当前值,即:current-1

struts2 循环标签使用的更多相关文章

  1. Struts2常用标签

    Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...

  2. Struts2的标签库(三)——控制标签

    Struts2的标签库(三) --控制标签 1.if/elseif/else标签 用于分支控制,取代JSP中的if语句,根据一个boolean(test属性的值)值判断是否进行下一步运算或者输出等. ...

  3. JavaWeb框架_Struts2_(五)----->Struts2的标签库

    1.  Struts2的标签库 1.1 Struts2标签库概述 Struts2的标签库可以分为以下3类:用户界面标签.非用户界面标签.AJAX标签; 2.1.1 Struts2标签库的分类和使用 1 ...

  4. Struts2之Struts2的标签库

    前言: Struts2提供了大量的标签 ,用来帮助开发表现层页面,这些表现一方面解决了美观性的需求,因为它们具有html标签一样的外观,另一方面它们解决了功能性的需求, 因为它们具有jsp脚本一样的逻 ...

  5. struts2:标签库图示,控制标签

    目录 一.struts2标签库图示二.控制标签1. 条件判断标签(if/elseif/else)2. 迭代标签(iterator) 2.1 遍历List 2.2 遍历Map 2.3 遍历List(Ac ...

  6. Struts2常用标签总结

    Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题.模板支持,极大地简化了视图页面的编写,而且,struts2的主题.模板都提供了很好的扩展性.实现了更好的 ...

  7. (转)Struts2的标签库

    http://blog.csdn.net/yerenyuan_pku/article/details/68638679 Struts2的标签库 对于一个MVC框架而言,重点是实现两部分:业务逻辑控制器 ...

  8. 二十 Struts2的标签库,数据回显(基于值栈)

    通用标签库 判断标签:<s:if>.<s:elseif>.<s:else> 循环标签:<s:iterator> 其他常用标签: <s:proper ...

  9. [JavaWeb基础] 012.Struts2 自定义标签使用

    在做开发中,我们会把一些比较经常使用到的代码封装起来,这样可以加快开发的速度和减少错误,并且在修改bug可以一次修改多次修复.那么在前端页面上,如果我们要经常用到公用的显示功能,并涉及到服务端逻辑操作 ...

随机推荐

  1. Visual Tree

    1.GetVisualParent public static T GetVisualParent<T>(DependencyObject obj) where T : Dependenc ...

  2. TextBox_TextChanged

    private void TextBox_TextChanged(object sender, TextChangedEventArgs e) { TextBox textBox = sender a ...

  3. 【精】C语言之变量存储类型

  4. HIVE部署安装(笔记)

    1.下载hive:wget http://mirrors.cnnic.cn/apache/hive/hive-0.12.0/hive-0.12.0.tar.gz2.解压hive安装文件 tar -zv ...

  5. zookeeperclient代码解读

    近期一直在忙WebPageTest(下面简称wpt)开源库的改动工作,当中一项工作须要将zookeeper(下面简称zk)集成到wpt里. zk作为分布式系统的同步工具.实现了写的原子性(要么失败.要 ...

  6. uploadfiy 3.0

    uploadfiy v3.0中按钮可以轻易修改成中英文,而不至于想2.xx版本中,需要对中文进行编码. 3.0中圆圆的按钮,很漂亮. 但是,3.0中去掉了原来的onComplete函数,并且也去掉了从 ...

  7. webpack打包过滤console.log

    在webpack.prod.conf.js里面的plugins里面加上 drop_debugger: true, drop_console: true new webpack.optimize.Ugl ...

  8. 算法笔记_191:历届试题 大臣的旅费(Java)

    目录 1 问题描述 2 解决方案   1 问题描述 问题描述 很久以前,T王国空前繁荣.为了更好地管理国家,王国修建了大量的快速路,用于连接首都和王国内的各大城市. 为节省经费,T国的大臣们经过思考, ...

  9. TP5报错variable type error: array

      variable type error: array 当你在tp5框架中写方法时返回一个数组时,tp5会报错:variable type error: array 这是因为tp5不支持返回数组. ...

  10. 图说十大数据挖掘算法(一)K最近邻算法

    如果你之前没有学习过K最近邻算法,那今天几张图,让你明白什么是K最近邻算法. 先来一张图,请分辨它是什么水果 很多同学不假思索,直接回答:“菠萝”!!! 仔细看看同学们,这是菠萝么?那再看下边这这张图 ...