JSTL 中c:forEach 嵌套c:if
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JSTL 中c:forEach 嵌套c:if相关的知识,希望对你有一定的参考价值。
问题: 在 <c:if test=""> 两个EL表达怎么比较?
我要用 $num 与$page.pageNum进行比较
<c:forEach items="$page.navigatepageNums" var="num">
<c:if test="$num ==$page.pageNum">
$num
</c:if>
</c:forEach>
这样也不行??
<c:forEach items="$page.navigatepageNums" var="num">
<c:if test='$num==$page.pageNum'>
$num
</c:if>
</c:forEach
<c:if test="$num ==page.pageNum"> 参考技术B 试试这样呢:$num eq page.pageNum
JSTL--测试EL表达式--drp212
JSTL(JSP标准标签库-JSP Standard Tag Library):
<c:out>
<c:if>
<c:choose><c:when><c:otherwise>
<c:forEach>
<fmt:formatNumber>
<fmt:formatDate>
EL(EL表达式-Expression language):
index.jsp
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%> <% 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> <a href="servlet/JstlElServlet">jstl表达式</a> <br> </body> </html>
web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"> <servlet> <servlet-name>JstlElServlet</servlet-name> <servlet-class>com.bjpowrnode.jstl.JstlElServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>JstlElServlet</servlet-name> <url-pattern>/servlet/JstlElServlet</url-pattern> </servlet-mapping> </web-app>
JstlElServlet
/** * */ package com.bjpowrnode.jstl; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * @ClassName:JstlElServlet * @Description:测试EL表达式 * @author wm * @date 2016年2月14日下午8:45:38 */ public class JstlElServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //普通字符串 request.setAttribute("hello", "Hello World"); request.getRequestDispatcher("/jstl_el.jsp").forward(request, response);; } }
jstl_el.jsp
<%@ page language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=GB18030"> <title>Insert title here</title> </head> <body> <h1>测试EL表达式</h1> <hr> <li>普通字符串</li><br> hello(jsp脚本):<%=request.getAttribute("hello") %></br> hello(El表达式:语法:$和{}:${hello}<br> hello(el表达式,el内置对象, pageScope,requestScope,sessionScope,applicationScope )<br> 如果不指定范围,它的搜索范围就是pageScope~applicationScope():${requestScope.hello}<br> hello(el表达式,从session中取得):${sessionScope.hello}<br> </body> </html>
以上是关于JSTL 中c:forEach 嵌套c:if的主要内容,如果未能解决你的问题,请参考以下文章
JSTL--JSTL表达式:c:forEach--drp215
在 JSP/JSTL 中使用 <c:forEach> 需要帮助
使用 JSTL <c:forEach> 标签遍历 List 和 Map 的元素