当index是变量时,如何在jsp中访问arraylist的元素?

时间:2013-02-27 07:34:42

标签: jsp arraylist springsource

我正在访问arraylist中的元素。问题出现了,因为所需元素的索引是一个变量。谁能帮助我?

例如<td><c:out value="${PARENT_MODULE[module.moduleId]}"> </c:out></td>

这里module.moduleId是一个变量。

我已经尝试了

<c:out value="${PARENT_MODULE[${module.moduleId}]}">

然而这会产生错误。

  

org.apache.jasper.JasperException:/WEB-INF/jsp/showModules.jsp(40,20)“$ {PARENT_MODULE [$ {module.moduleId}]}”包含无效的表达式:javax.el .ELException:错误解析:$ {PARENT_MODULE [$ {module.moduleId}]}

感谢

2 个答案:

答案 0 :(得分:6)

由于module.moduleId在EL表达式中,因此将对其进行评估。因此,您无需将其附加到额外的$ {}。

<c:out value="${PARENT_MODULE[module.moduleId]}">将有效。

答案 1 :(得分:1)

假设PARENT_MODULE是您给modules数组的别名 假设module是对象,moduleId是模块对象中的属性

试试这个:

< c:out value="${PARENT_MODULE[num].moduleId}"/>

其中num是一个数字。 PARENT_MODULE[num]会在数组中的“ num ”位置返回对象module。之后,您只需访问moduleId属性。