打印从servlet转发到JSP的数组

时间:2012-04-11 06:59:55

标签: arrays jsp servlets printing jstl

我已将数组userName [] []从servlet转发到JSP。我可以访问像${userName[2][3]}这样的数组元素,但我无法使用变量迭代数组。例如${userName[i][j]}${userName[<%=i>][<%=j>]}无效。

另外,我应该将索引变量声明为var(JS),因为我的代码也使用JS从数组中绘制图形,或者我是否需要使用JSTL?我是JSP的完全新手

1 个答案:

答案 0 :(得分:1)

以下是在JSTL中迭代数组的方法(请注意,我将userName变量复数化,因为它是一个数组):

<c:forEach var="userName" items="userNames">
    // do something with the userName
</c:forEach>

由于数组是一个数组数组,因此可以嵌套两次迭代:

<c:forEach var="innerArray" items="userNames">
    <c:forEach var="element" items="innerArray">
         // do something with the element
    </c:forEach>
</c:forEach>

请注意,JavaScript在客户端执行,而JSP在服务器端执行。当JS代码执行时,它无权访问您的服务器端Java数组。如果需要在客户端访问Java数组的内容,则应使用JSON对其进行序列化,并在JavaScript中解析生成的JSON字符串。