我有以下问题: 想象一下,我们有一个人员列表,他们旁边有一个按钮。当我们单击按钮时,我们需要将用户的 id(长类型)发送到 servlet。我们使用“for”循环生成人员列表,但我们不会在任何地方显示此 ID,只有当单击此人的按钮时,我们才会发送此人的 ID。
这里是示例:
约翰 -- 23 --- 男 ---(按钮) 见面(他的 ID 是 2)
Marty-- 26 --- 女---(按钮)见面(她的 ID 是 5)
乔治 -- 25 --- 男 ---(按钮) 见面(他的 ID 是 4)
因此,如果我们想见 John,并单击该按钮,servlet 就会收到 2 作为 id。 那么,我如何才能做到这一点,而无需在 jsp 代码中的任何位置但在我循环的对象中使用 id 呢?
最佳答案
如果您只想发出 GET 请求,请使用链接:
<a href="meet?id=${person.id}">Meet</a>
如果您想发帖,请使用表单:
<form action="meet">
<input type="hidden" name="id" value="${person.id}"/>
<input type="submit" value="Meet"/>
</form>
如果您想发送 AJAX 请求,那么这在很大程度上取决于您使用的 JavaScript 库/框架,但是您可以例如将 ID 和数据属性存储起来,并从单击中的单击元素中获取它处理程序:
<button type="button" data-id="${id}">Meet</button>
关于Java向servlet传递不可见参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28526801/