jstl标签 总结

经常用到的有c标签、fn标签、fmt标签

一、c标签

首先要在页面引入标签包: <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>

后台返回的list集合在前台判断是否为空,如果不为空和空串则遍历,否则显示“暂无数据”

<table class="tlist-table">
				<thead><tr><td>类别</td><td>标题</td><td>状态</td><td>提交时间</td></tr></thead>
				<tbody>
					<c:if test="${not empty contents}">
						<c:forEach items="${contents}" var="content" varStatus="i">
							<c:if test="${i.count<=7}">
								<tr>
									<td>${content.contnamebak}</td>
									<td>${content.contname}</td>
									<c:if test="${content.contjudgenote!=null and content.contjudgenote=='1'}">
								   		<td><span class="green">已解决</span></td>
								    </c:if>
								    <c:if test="${content.contjudgenote!=null and content.contjudgenote=='0'}"> 
								   		<td><span class="red">未解决</span></td>
								    </c:if>
									<td><fmt:formatDate value="${content.uploaddt}" pattern="yyyy.MM.dd" /></td>
								</tr>	
							</c:if>
						</c:forEach>
					</c:if>
					<c:if test="${empty contents}">
						<tr><td colspan="4">暂无数据</td></tr>
					</c:if>
				</tbody>
			</table>
其中contents是后台action中request作用域中的集合:request.setAttribute("contents", contents);

注意:

1、判断集合不是空的(集合的size大于0)${not empty 集合};判断结合为空(也就是集合长度为0) ${empty 集合};

2、标签中的“并且”用“and”而不支持“&&”,“或”用“||”;

3、没有<c:else>这个标签;

4、<c:forEach>中的属性varStatus的参数有以下几种:

current:当前这次迭代此集合中的项即当前对象

index:当前这次迭代从0开始的迭代索引

count:当前这次迭代从1开始的迭代计数

first:用来表明当前这轮迭代是否是第一次迭代的标志(只有列表第一条记录为true,后面的都返回false)

last:用来表明当前这轮迭代是否是最后一次迭代的标志(只有列表最后一条记录为true,前面的都返回false)

5、<c:forEach>中的属性

begin:如果指定了items,那么迭代就从items[begin]开始进行迭代;如果没有指定items,那么就从begin开 始迭代。它的类型为整数。

end:如果指定了items,那么就在items[end]结束迭代;如果没有指定items,那么就在end结束迭代。它的类 型也为整数。

step:步长,遍历间隔数

例子:要遍历前10条记录,则设置begin="0" end="9" step="1"或用varStatus中的count来限制

二、fn标签

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>

是否包含某字符串:${fn:contains(对象.属性, '被包含的字符串')}"

集合长度:${fn:length(集合)}-->输出int值

三、fmt标签

<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>

格式化时间:<fmt:formatDate value="${serviceaccept.currentdate}" pattern="yyyy.MM.dd" />,其中的currentdate为Date类型的

后台是这样的:

SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式
String currentDate = df.format(new Date());

对象.setCurrentdate(currentDate);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值