JSP-JSTL
来源:互联网 发布:mac升级显卡 编辑:程序博客网 时间:2024/06/03 19:34
【1】c:foreach
<c:forEach>
标签用于通用数据循环,它有以下属性
|属 性 ——- |描 述——————–|是否必须———–|缺省值
items ——-进行循环的项目 ———-否——————–无
begin ——–开始条件——————否—————— 0
end ———-结束条件 ——————否———-集合中的最后一个项目
step ———–步长———————-否 ———————-1
var —–代表当前项目的变量名 ——–否——————–无
varStatus –显示循环状态的变量 ——-否 ——————–无
<c:forEach>
标签的items属性支持Java平台所提供的所有标准集合类型。
此外,您可以使用该操作来迭代数组(包括基本类型数组)中的元素。它所支持的集合类型以及迭代的元素如下所示:
java.util.Collection:调用iterator()来获得的元素。java.util.Map:通过java.util.Map.Entry所获得的实例。java.util.Iterator:迭代器元素。java.util.Enumeration:枚举元素。Object实例数组:数组元素。基本类型值数组:经过包装的数组元素。用逗号定界的String:分割后的子字符串。javax.servlet.jsp.jstl.sql.Result:SQL查询所获得的行。
不论是对整数还是对集合进行迭代,<c:forEach>
的varStatus属性所起的作用相同。
和var属性一样,varStatus用于创建限定了作用域的变量(改变量只在当前标签体内起作用)。
不过,由varStatus属性命名的变量并不存储当前索引值或当前元素,而是赋予javax.servlet.jsp.jstl.core.LoopTagStatus类的实例。
该类包含了一系列的特性,它们描述了迭代的当前状态,如下这些属性的含义如下所示:
current:当前这次迭代的(集合中的)项。index:当前这次迭代从0开始的迭代索引。count:当前这次迭代从1开始的迭代计数。first:用来表明当前这轮迭代是否为第一次迭代,该属性为boolean类型。last:用来表明当前这轮迭代是否为最后一次迭代,该属性为boolean类型。begin:begin属性的值。end:end属性的值step:step属性的值
- 遍历输出表格:
<% List<Customer> custs2 = new ArrayList<Customer>(); custs2.add(new Customer(1,"AAA",11));//index:0 //custs2.add(new Customer(2,"AAA",11));//index:0 request.setAttribute("custs2",custs2); %> <!-- 遍历数据 collection --> <table border="1"> <c:forEach items="${requestScope.custs2}" var="cust" varStatus="status"> <tr> <td>${cust.id}</td> <td>${cust.name}</td> <td>${cust.age}</td> <td>${status.index}</td> <td>${status.count}</td> <td>${cust.id}</td> <td>${cust.id}</td> </tr> </c:forEach> </table>
- 子元素为radio时:
后台是根据标签的name属性获取标签值,当遍历时,应保证每次循环的name属性不同!
<% request.setCharacterEncoding("UTF-8"); List<Customer> custs = new ArrayList<Customer>(); custs.add(new Customer(1,"AAA",11));//index:0 custs.add(new Customer(2,"BBB",12)); custs.add(new Customer(3,"CCC",13)); custs.add(new Customer(4,"DDD",14)); request.setAttribute("custs",custs); %> <form action="testServlet1" method="post"> <br><br> <c:forEach items="${custs}" var="cust" varStatus="status"> <input type="radio" name="cust${cust.id}" value="${cust.name}"/> ${cust.name} <input type="radio" name="cust${cust.id}" value="${cust.id}"/> ${cust.id} <input type="radio" name="cust${cust.id}" value="${cust.age}"/> ${cust.age} <br/><br/> </c:forEach> <br><br> <input type="submit" value="Submit"> </form>
0 0
- jsp JSTL
- Jsp---JSTL
- JSP-JSTL
- JSP-JSTL
- Jsp jstl
- Jsp---JSTL
- Base-Jsp-3-JSTL
- JSTL简化JSP编码
- JSTL简化JSP编码
- jstl简化jsp编码
- JSP标签(JSTL)
- jsp---JSTL标签详解
- jsp+jstl实现分页
- JSP EL、JSTL笔记
- JSP之JSTL functions
- jsp、jstl笔记
- jsp-jstl-学习
- JSP-JSTL连接数据库
- 448. Find All Numbers Disappeared in an Array 找出数组中消失的数
- 关于QT nativeWindow
- ERP项目管理——项目阶段及交付物
- CentOS 7 安装 Redis-3.2.6
- JSP整理总结--9大内置对象、4个作用域
- JSP-JSTL
- Spring Annotations
- adb取出手机安装的应用
- 增加exe的托盘图标
- Spring MVC 4 - 多视图输出
- 设计一个父类,并派生多个子类
- 汇编语言编译器发展简史
- 1.7 起步 - 获取帮助
- JavaWeb--Session、Cookie