我的JSP页面上有2个请求参数:
- count:一个HashMap对象,其中包含购物元素的名称和订单数量作为值。
- size:一个HashMap对象,其中包含购物元素的名称和作为值的购物元素当前库存的大小。
例如:count包含[“煮鸡蛋”,4],size包含[“煮鸡蛋”,96]。
我写了以下jsp代码。我迭代所有计数对象,并将size的值称为计数的键值。
<c:forEach var="indexCount" items="${count}">
<div class="row">
<div class="col-md-12">
<div class="panel panel-primary">
<div class="panel-heading panel-heading-sm">
<c:out value="${indexCount.key}"/>
<span class="pull-right">
<em id="size_${size['${indexCount.key}']}">Size: <c:out value="${size['${indexCount.key}']}"/> Count: <c:out value="${indexCount.value}"/></em>
</span>
</div>
</div>
</div>
</div>
</c:forEach>
但是我在页面上看不到任何值。怎么了?
答案 0 :(得分:1)
问题是您在不需要JSTL语法时使用了double。 分配一次美元符号和大括号就足够了。 因此,更改以下代码:
<em id="size_${size['${indexCount.key}']}">Size: <c:out value="${size['${indexCount.key}']}"/>
收件人
<em id="size_${size[indexCount.key]}">Size: <c:out value="${size[indexCount.key]}"/>