以下表达式即使在运行时也会返回错误:
<c:set value="${MoneyForm.money.policy.policies[${loopIndex-1}].amount}" var="amountEuro" />
javax.el.ELException: Failed to parse the expression
此声明介于“&lt; for:each&gt;”之间循环使用loopIndex-1。
有人可以帮忙纠正吗?请提供更精确的解决方案,因为我需要对大约20 - 30个对象进行相同的操作
答案 0 :(得分:2)
您有嵌套的EL,这不是有效的语法。不需要用大括号再次封装looindex-1
。
尝试
${MoneyForm.money.policy.policies[loopIndex-1].amount}
如果您的c:forEach如下所示
<c:forEach items="${Collection}" var="item" varStatus="loopindex">
</c:forEach>
此处,如果您要访问基于零的索引,请使用loopindex.index
,如果您要访问基于1的索引,请使用loopindex.count
,同时使用var="item"
,为您提供当前项目正在迭代的集合