gpt4 book ai didi

java - 在 servlet 中访问 jSTL 变量

转载 作者:行者123 更新时间:2023-11-29 06:00:51 24 4
gpt4 key购买 nike

我通过在 jsp 中迭代客户列表来填充客户数据,如下所示。

<form action="CustomerUpdate" method="post">
<c:forEach var="listItems" items="${customers}">
<label> First Name: </label><c:out value="${listItems.fname}" />
<label> Last Name: </label><c:out value="${listItems.lname}" />
<label> Address: </label><c:out value="${listItems.address}" /> &nbsp;
<input type="submit" value="Edit" name="edit">
<input type="submit" value="Delete" name="delete"><br />
</c:forEach>
</form>

现在在编辑或删除每条记录的操作中,我想跟踪哪些客户需要编辑/删除。所以在 servlet 中,我如何访问 var listItems 中的客户对象。如果不可能,我是否需要隐藏带有值的输入变量并使用 servlet 中的 getParameter 访问它们?

最佳答案

这只是一个关于如何操作的简单示例。以这种方式更改您的代码:

<c:forEach var="listItems" items="${customers}">          
<form action="CustomerUpdate" method="post">
<input type="hidden" value="${listItems.id}" name="id">
<label> First Name: </label><c:out value="${listItems.fname}" />
<label> Last Name: </label><c:out value="${listItems.lname}" />
<label> Address: </label><c:out value="${listItems.address}" /> &nbsp;
<input type="submit" value="Edit" name="action">
<input type="submit" value="Delete" name="action"><br />
</form>
</c:forEach>

更新

为每一行创建一个表单元素,并为每一行放置一个带有 id 的隐藏字段。因此,当您按下该按钮时,您将在请求中收到一个值,使您能够检测到该行。这样:

String id = request.getParameter("id");
String action = request.getParameter("action");

现在您知道了 idaction 类型(编辑或删除)。

替代方案

不要使用表单和提交来调用您的操作,而是使用直接链接。

<c:forEach var="listItems" items="${customers}">          
<input type="hidden" value="" name="id">
<label> First Name: </label><c:out value="${listItems.fname}" />
<label> Last Name: </label><c:out value="${listItems.lname}" />
<label> Address: </label><c:out value="${listItems.address}" /> &nbsp;
<button onclick="window.location.href='CustomerUpdate?action=edit&id=${listItems.id}'">Edit</button>
<button onclick="window.location.href='CustomerUpdate?action=delete&id=${listItems.id}'">Delete</button>
</c:forEach>

关于java - 在 servlet 中访问 jSTL 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10153524/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com