5

使用 forEach 循环,我想创建表格单元格(一行),而每个单元格都包含一个表单的输入字段。表格单元格的数量始终是固定的 (12)。这实际上是没有问题的。然而,挑战来了:forEach 还应该在必须从 Map(Long, Double) 获取的输入字段中输入可变数量的默认值。

这是我的(简化)尝试:

<c:forEach var="number" begin="1" end="12" >
  <td>
      <input type="text" value="${requestScope.aMapWithData[number]}" /> 
  </td> 
</c:forEach>

但这不会在输入字段中显示 Map 中的任何值。我猜问题是“数字”的类型是字符串而不是长。所以我想知道这个问题是否可以在不使用scriptlet的情况下解决。

4

2 回答 2

7

你想显示什么号码?它是每个地图条目的索引号吗?

<c:forEach items="${aMapWithData}" var="item" varStatus="status"> 
    <td> 
        <c:out value="${status.count}."/>  
        <input type="text" name="${item.key}" value="${item.value}" />  
    </td> 
</c:forEach> 
于 2012-08-09T13:57:32.320 回答
0

尝试这个

<c:forEach items="${aMapWithData}" var="mapEntry">
   <c:set var="mapKey" value="${mapEntry.key}"></c:set>
   <c:set var="mapValue" value="${mapEntry.value}"></c:set>
</c:forEach>
于 2012-08-09T13:57:22.033 回答