【发布时间】:2015-05-03 00:49:36
【问题描述】:
在我的 Struts2 应用程序中,我想将隐藏值从 JSP 文件传递到 Action 类。这将是此 JSP 页面的唯一用途,因此实际上它将充当重定向页面,其中包含隐藏值。我的代码:
<form action="editexperiment" method="post">
<s:hidden name="id" value="%{id}"/>
<button type="submit">Submit</button>
</form>
上面的代码有效,但显然我不想点击提交按钮,那么我怎样才能删除它并自动提交这个(隐藏的)表单?我知道我可以使用 JavaScript 轻松实现这一点,但这不是我的首选解决方案。
【问题讨论】:
-
... 除了使用 JavaScript 之外,您还能怎么做呢?甚至为此使用表单有什么意义?
-
戴夫,这正是我的疑问。关于你的第二个问题,如果有另一种方法可以直接将变量从一个动作发送到另一个动作,而不使用表单,我很想知道。我也没有提到使用会话对象,因为这个变量将精确地用作从会话映射中获取对象的键。
-
作为 URL 参数?它的存储位置(会话或作为参数传递)并不真正相关。如果您在 JSP 页面中提供了它,那么它显然在服务器端可用,并且您根本不需要公开它。拥有一个仅用于使用您从服务器端提供的 ID 进行重定向的页面似乎很奇怪,因为您可以从操作的配置中进行重定向。
-
我同意这个解决方案不是更优雅,但它是我自己能想到的最好的解决方案。 URL 参数解决方案对我来说不是一个选项,因为我不想将变量公开给用户。感谢您的意见,请参阅下面接受的答案。
-
在this gist 中,因为太长,无法清晰地看到评论。
标签: jsp struts2 form-submit hidden-field