遍历对象数组并在JSP中使用c:if jstl

问题描述 投票:0回答:1

我目前正在从事一个小型Web应用程序项目。主页上有一个链接,一旦单击该链接,该链接将调用servlet,该servlet从数据库中检索数据(以对象的arraylist的形式),将arraylist添加到会话(作为客户),并重定向到一个jsp,对象(客户)在表中显示。有一个“更多详细信息”列,其中每一行都有一个按钮,用于将表单提交到另一个jsp,并带有一个隐藏的输入值,其中customerNumber为值,num为名称。

[我想在第二个jsp中循环所有客户,只显示其customerNumber与第一个jsp发送的客户编号相匹配的客户。

当前代码:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<% String hidden = request.getParameter("num"); %>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Customer Details Page</title>
    </head>
    <body>
        <div>
            <c:forEach var="c" items="${customers}">
                <c:if test = "${hidden == c.customerNumber}">
                    <table>
                        <thead>
                            <tr>
                                <th>Customer Phone</th><th>Customer Country</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td>${c.phone}</td><td>${c.country}</td>
                            </tr>
                        </tbody>
                    </table>
                </c:if>
            </c:forEach>
        </div>   
    </body>
</html>

上面的代码仅打印表格标题。任何帮助表示赞赏。

java jsp jstl
1个回答
0
投票

代替使用

<td>${c.phone}</td><td>${c.country}</td>

您可以尝试:

<td><c:out value="${c.phone}" /></td><td><c:out value="${c.country}" /></td>
© www.soinside.com 2019 - 2024. All rights reserved.