request中有个“admin.dealers”属性,是个元素是Map类型的List,其傎如下所示:
[{dealerid=1, dealername=商店A}, {dealerid=2, dealername=商店B}, {dealerid=3, dealername=商店C}, {dealerid=4, dealername=商店D}, {dealerid=5, dealername=商店E},...]
在JSP中如何用JSTL的c:forEach遍历所有的dealerid与dealername?谢谢!
[{dealerid=1, dealername=商店A}, {dealerid=2, dealername=商店B}, {dealerid=3, dealername=商店C}, {dealerid=4, dealername=商店D}, {dealerid=5, dealername=商店E},...]
在JSP中如何用JSTL的c:forEach遍历所有的dealerid与dealername?谢谢!
${dealer.key}:${dealer.value}
</c:forEach>遍历的对象实际上是 Map.Entry 对象,
Map.Entry 有getKey()与getValue()方法
请指教
${dealer.key}:${dealer.value}
</c:forEach>
对不起,临时手写的
谢谢你,不过还是报错:
java.lang.NoSuchFieldError: deferredExpression
org.apache.taglibs.standard.tag.common.core.ForEachSupport.release(ForEachSupport.java:178)
<c:forEach var="dealer" items="${admin.dealers}">
<c:out value="${dealer.dealerid}"/>
<c:out value="${dealer.dealername}"/>
</c:forEach>
<c:forEach items="${dealer}" var="entry">
${entry.key },${entry.value }
</c:forEach>
</c:forEach>
<c:out value="${dealer[dealerid]}"/>
<c:out value="${dealer[dealername]}"/>
</c:forEach>
或者
<c:forEach var="dealer" items="${admin.dealers}">
<c:forEach items="${dealer}" var="entry">
${entry.key },${entry.value }
</c:forEach>
</c:forEach>
都是可以的,可能你别的地方有问题
request.setAttribute("adminDealers",list);<c:forEach var="dealer" items="${adminDealers}">
<c:out value="${dealer[dealerid]}"/>
<c:out value="${dealer[dealername]}"/>
</c:forEach>
${dealer.get('dealerid')}
${dealer.get('dealername')}
</c:forEach>