我如何从 JSTL 中的列表中获取元素(不是 forEach)?

How can I get element from list in JSTL (not forEach)?

我在 forEach 中,想要获取一个元素(来自 listName),其比例 ID 作为 forEach 循环元素。

<% i=0; %>
<c:forEach var="account" items="${ctx.model.accounts}">
    <c:out value="${listName.get(${i})}" />
    <% i++; %>
</c:forEach>

这可能吗?

我的意思是${listName.get(${i})}当然是错的,可是怎么弄呢

${listName[i]} 将为您提供 listName.

中的元素

查看 Get specific element in a list or array using EL 了解详情。

您不需要 scriptlet 即可实现。

<c:forEach var="account" items="${ctx.model.accounts}" varStatus="loopStatus">
    <c:out value="${listName[loopStatus.index]}" />
</c:forEach>

但是,恕我直言,您有两个平行列表这一事实是一种气味。为什么你没有一个列表,其中每个元素都允许访问帐户和列表名中的相应元素?