gpt4 book ai didi

java - 如何通过单击超链接从 Java 中的 arraylist 检索值

转载 作者:行者123 更新时间:2023-12-01 13:58:12 26 4
gpt4 key购买 nike

我正在开发 Java 应用程序电子发票应用程序。该应用程序的目的是添加电子发票,然后显示我添加的电子发票(到目前为止工作完全正常)。但是,当我显示发票时,我希望公司名称具有超链接,并且单击链接后,特定的发票详细信息应显示在 Jsp 页面中。请注意,我将信息传递给 servlet,然后使用 getter 和 setter 将信息存储在 java 类中。 Arraylist 对象中存储了多条记录。我似乎找不到方法来做到这一点。任何帮助是极大的赞赏。

<%
float bigTotal=0;
try
{
@SuppressWarnings("unchecked")
ArrayList<UserInvoice> myVal = (ArrayList<UserInvoice>)session.getAttribute("eInvoice");
out.write("<table border='0'>");
out.write("<th width='200'>Invoice No.</th><th width='300'>Client Name</th> <th width='200'>Total</th><th width='200'>Payment Due Date</th>");
for(UserInvoice invoices:myVal)
{
out.write("<tr>");
out.write("<td height='25'>");
out.write(""+invoices.getInvoiceNo());
out.write("</td>");

out.write("<td>");
out.write(invoices.getClientName());
out.write("</td>");

out.write("<td>");
out.write(String.valueOf(invoices.getTotal()));
out.write("</td>");

out.write("<td>");
out.write(invoices.getPayDueDate());
out.write("</td>");

out.write("</tr>");
bigTotal = bigTotal+invoices.getTotal();

}
out.write("</table>");
}
catch(Exception ex)
{
out.write("<h1>Looks like you haven't added any invoices yet.</h1>");
}

最佳答案

您可以使用JSTL foreach :

<%@ page pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<% request.setAttribute("eInvoices", eInvoices); %>

<table>
<c:forEach items="${eInvoices}" var="value">
<tr><td><c:out value="${value.name}"/></td></tr>
</c:forEach>
</table>
<小时/>

使用AJAX获取详细信息。

(当您单击发票名称时,系统会向页面发出 HTTP 请求以获取详细信息。这些详细信息以 HTML 形式返回,内容类型为 'text/html')

示例:

关于java - 如何通过单击超链接从 Java 中的 arraylist 检索值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19501420/

26 4 0