![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
jsp中使用forEach报错,但单纯的EL取值可以使用,详细如下。
<c:forEachvar="op"items="${photo}">${op}</c:forEach>然后报错:org.apache.jasper.JasperExce...
<c:forEach var="op" items="${photo}">
${op }
</c:forEach>
然后报错:org.apache.jasper.JasperException: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
但是${photo}能取到值,它为map对象
引用了jstl1.2jar和standard.jar
引用了标签库:
<%@page isELIgnored="false"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 展开
${op }
</c:forEach>
然后报错:org.apache.jasper.JasperException: javax.servlet.jsp.PageContext.getELContext()Ljavax/el/ELContext;
但是${photo}能取到值,它为map对象
引用了jstl1.2jar和standard.jar
引用了标签库:
<%@page isELIgnored="false"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> 展开
展开全部
photo是map,forEach要便利只能是list
<c:forEach var="op" items="${photo}">
改成
<c:forEach var="op" items="${photo.XXX}">
XXX为map里存的list对象名
<c:forEach var="op" items="${photo}">
改成
<c:forEach var="op" items="${photo.XXX}">
XXX为map里存的list对象名
追问
c便签是可以遍历map对象的哦,有两种方法
(1)
键: ${op.key}
值:${op.value}
(2)
${op.XXX} //XXX为键名
展开全部
<c:forEach var="op" items="${photo}">
${op .value.xx}
</c:forEach>
是你取值的方法错了,按上面的方法才能取出Map对象的值
${op .value.xx}
</c:forEach>
是你取值的方法错了,按上面的方法才能取出Map对象的值
追问
试了一下,这么写也是不对的
刚刚测试了一下
测试
测试了一下,也是报了上面的错误,会不会是因为jsp版本的问题……唉,纠结
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
${op }
改成<c:out value="${op}" /> 试试
改成<c:out value="${op}" /> 试试
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询