没有JS的JSP动态表单动作属性?

时间:2015-01-09 13:10:32

标签: java javascript html jsp

我需要点击表单提交按钮发送http post请求。我有一个表格:

<form action="..." method="DELETE">
    <input type="text" name="id" id="id" />
    <input type="submit" />
</form>

是否可以使用用户在文本字段中输入的值动态设置表单的action属性?例如。

#id=120 -----> action = "users/120"

设置动作属性不是必要的,但是可以使用JS的{​​{1}}仅

以{0}}的方式提交表单。

4 个答案:

答案 0 :(得分:2)

JSP或JSTL - 它是服务器端“模板生成器”...... 它无法了解客户端操作,例如当用户填写输入时。

所以没有任何前端逻辑就没有办法做到这一点。

此行为只能通过重定向到您需要的URL的其他控制器方法进行模拟。

答案 1 :(得分:1)

不,不是。 JSP用于在服务器端呈现HTML,它不在客户端工作,至少它不是为它开发的。因此,您应该在服务器上呈现您的操作一次,或者如果您需要用户交互则使用javascript(您还可以使用AJAX更新页面状态并在服务器上重新呈现页面)。

答案 2 :(得分:1)

您可以尝试创建一个Controller(也可以是servlet),它将所有POST请求捕获到&#34;用户&#34;,读取id参数并重定向到&#34; users / {idReadFromRequestParameters}&# 34; URL

答案 3 :(得分:1)

如果您绝对反对使用javascript,我想到的唯一解决方案如下:

  1. 将操作提交到服务器,以独立于ID
  2. 的特定网址
  3. 从请求参数中检索ID
  4. 重定向到服务器端的users / id
  5. 实际实现取决于您在服务器端使用的框架。