有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

在forEach循环中包含JSP页面的java

我需要为每个循环执行操作,并将循环内容包含到其他jsp页面。现在我需要将循环变量传递给其他JSP页面。我试过跟随,但没用。当我在包含的页面中使用属性时,它只返回空值

<c:forEach var="item" items="${items}" varStatus="loop">    
    <jsp:include page="/my_jsp_page.jsp" flush="true">
        <jsp:param name="item" value="${item}" />
    </jsp:include>
</c:forEach>

共 (2) 个答案

  1. # 1 楼答案

    您可以在调用jsp:include之前将“item”存储到请求属性中

    <c:set var="item" scope="request" value="${item}">
    

    然后从请求范围中读取它

  2. # 2 楼答案

    这是因为jsp:param设置了一个请求参数,而不是请求属性

    在包含的页面中,您必须像这样引用item

    ${param['item']}
    

    请注意,因为我们在这里讨论的是请求参数,所以这些参数将始终为字符串。如果这不适合你,你应该遵循上面@Boris的建议