对于表达式语言每个循环
问题描述:
我想打印出我的列表“排序”与表达式语言每一个项目在一个JSP文件这样的:对于表达式语言每个循环
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);
样本对象类
public class Sort {
private String name;
//create getter and setter for name
}
请确保您已导入JSTL库。
您是否尝试过使用 ? –
P3trur0
是的,同样问题 –
请问你能提供一个完整的例子吗? – P3trur0