java JSP中 EL表达式怎么指定显示list集合中的第几条的数据

java JSP中 EL表达式怎么指定显示list集合中的第几条的数据,第1张

c:foreach的时候加个if判断, 如果当前迭代的id等于你想显示的数据(或者判断当前迭代序号等于2的显示也行),进行显示,否则继续迭代。

为什么非要用el判断呢?直接用数据库卡你想显示那条数据不就好了么?

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>

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

<%

List list = new ArrayList()

for(int i = 65i <65 + 40i++) {

list.add((char)i)

}

pageContext.setAttribute("list", list)

%>

<c:forEach var="var" items="${list}" varStatus="vs">

${var } -

<c:if test="${vs.count mod 3 eq 0}">

<br>

</c:if>

</c:forEach>

EL即Expression Language(表达式语言)

EL的语法:${ EL exprission }

${ bean.name } 或 ${ bean['name'] }

说白了,EL是用来显示数据的,功能跟<%=表达式%>一样,EL是不需要引入什么东西的

JSTL(JavaServerPages Standard Tag Library)JSP标准标签

JSTL标准标签库包括核心标签库和SQL标签库,核心标签库常用的是if和forEach

说白了JSTL常实现网页逻辑判断和迭代显示的,需要引入

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

只要JSTL和EL结合,就基本可以让页面再无<% %>jsp代码了。

给你一段我今天考试的代码:

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>

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

<%

String path = request.getContextPath()

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"

%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>

<head>

<base href="<%=basePath%>">

<title>My JSP 'index.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">

<meta http-equiv="cache-control" content="no-cache">

<meta http-equiv="expires" content="0">

<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">

<meta http-equiv="description" content="This is my page">

<!--

<link rel="stylesheet" type="text/css" href="styles.css">

-->

</head>

<body>

<form action="work.do?method=search" method="post">

<table border="1" align="center" width="50%">

班级:<select name="student.s_class">

<option value="0">全部</option>

<c:forEach var="T_class" items="${requestScope.tClassList}">

<option value="${T_class.c_no}">

${T_class.c_name}

</option>

</c:forEach>

</select>

科目:<select name="student.s_schedule">

<option value="0">全部</option>

<c:forEach var="T_schedule" items="${requestScope.tSchedultList}">

<option value="${T_schedule.s_no}">

${T_schedule.s_name}

</option>

</c:forEach>

</select>

状态<select name="student.s_status">

<option value="0">全部</option>

<option value="1">已处理</option>

<option value="2">未处理</option>

</select>

<input type="submit" value="提交">

</table>

</form>

<c:if test="${requestScope.searchResult==0}">

<h5 align=center>无此数据</h5>

</c:if>

<c:if test="${requestScope.searchResult==1}">

<h3 align=center>查询结果如下</h3>

<table border="1" align="center" width="50%">

<tr>

<th>姓名</th>

<th>班级</th>

<th>科目</th>

<th>成绩/处理</th>

</tr>

<c:forEach var="MainBean" items="${requestScope.mainList}">

<tr>

<td>${MainBean.s_name}</td>

<td>${MainBean.c_name}</td>

<td>${MainBean.ts_name}</td>

<td>

<c:if test="${MainBean.s_status==1}">${MainBean.s_score}</c:if>

<c:if test="${MainBean.s_status==2}"><a href="work.do?method=toPiyue&stuId=${MainBean.id}">批阅</a></c:if>

</td>

</tr>

</c:forEach>

</table></c:if>

</body>

</html>

可能说得不是很清楚,这个多查查资料,多练练手就会了


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9416977.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存