对于使用表达式语言的每个循环
For each loop with Expression Language
我想在 JSP 文件中使用表达式语言打印列表 "sorts" 中的每个项目,如下所示:
Try: Pizza-Margherita
Try: Cheese-Pizza
所以如果我使用像这样的普通表达式就可以了
Try: ${sorts[0]}
Try: ${sorts[1]}
但我必须为列表中的每个项目编写它
所以我尝试使用以下两个循环:
<c:forEach items="${sorts}" var="item">
Try: ${item}<br>
</c:forEach>
<c:forEach var="item" items="${sorts}">
<td>
Try: <c:out value="${item}" />
</td>
</c:forEach>
它没有用,我每次都得到这个输出:
Try:
为什么我的 foreach 循环不起作用?我做错了什么?
这是因为您没有在 JSP 文件中包含核心标签库。
您将通过在文件顶部插入以下行来执行此操作。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
这是示例JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<c:forEach var="item" items="${sorts}">
${item.name}
</c:forEach>
</body>
</html>
这是示例 Java 代码
List<Sort> sortList = new ArrayList<>();
Sort s1 = new Sort();
s1.setName("Pizza-Margherita");
Sort s2 = new Sort();
s2.setName("Cheese-Pizza");
sortList.add(s1);
sortList.add(s2);
request.setAttribute("sorts", sortList);
示例对象class
public class Sort {
private String name;
//create getter and setter for name
}
确保您已导入 JSTL 库。
我想在 JSP 文件中使用表达式语言打印列表 "sorts" 中的每个项目,如下所示:
Try: Pizza-Margherita
Try: Cheese-Pizza
所以如果我使用像这样的普通表达式就可以了
Try: ${sorts[0]}
Try: ${sorts[1]}
但我必须为列表中的每个项目编写它
所以我尝试使用以下两个循环:
<c:forEach items="${sorts}" var="item">
Try: ${item}<br>
</c:forEach>
<c:forEach var="item" items="${sorts}">
<td>
Try: <c:out value="${item}" />
</td>
</c:forEach>
它没有用,我每次都得到这个输出:
Try:
为什么我的 foreach 循环不起作用?我做错了什么?
这是因为您没有在 JSP 文件中包含核心标签库。 您将通过在文件顶部插入以下行来执行此操作。
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
这是示例JSP
<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
pageEncoding="ISO-8859-1"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
</head>
<body>
<c:forEach var="item" items="${sorts}">
${item.name}
</c:forEach>
</body>
</html>
这是示例 Java 代码
List<Sort> sortList = new ArrayList<>();
Sort s1 = new Sort();
s1.setName("Pizza-Margherita");
Sort s2 = new Sort();
s2.setName("Cheese-Pizza");
sortList.add(s1);
sortList.add(s2);
request.setAttribute("sorts", sortList);
示例对象class
public class Sort {
private String name;
//create getter and setter for name
}
确保您已导入 JSTL 库。