【问题标题】:How to add inputed value from input to the action of form?如何将输入中的输入值添加到表单的操作中?
【发布时间】:2014-04-07 14:15:22
【问题描述】:

我有一个向控制器发送请求的表单。

<form method="POST" action="/user/{id}">
    <input type="text" placeholder="Input Id">
    <button>Get User</button>
</form>

我需要将输入的值添加到表单的操作中。我该怎么做?例如,如果用户输入 '2',我的操作必须是 action="/user/2"。

更新:

我可以使用这样的东西吗(见下文)?

<form:form id="myForm" method="POST" action="">
    <input type="text" id="userId" placeholder="Input Id">
    <button onclick="setId()">Get User</button>
</form:form>

还有脚本:

<script>
        function setId (){
            var id = document.getElementById('userId');
            document.getElementById('myForm').action  = '/user/'+id;
        }
</script> 

【问题讨论】:

  • 我只需要弹簧形式或 jstl。
  • 好的。如何使用 js 解决我的问题?
  • @SotiriosDelimanolis,您的示例仅查看 js,但未提及此帖子中的标签:stackoverflow.com/questions/2701041/…
  • @jmail 我之前说过,您只能使用 Javascript 来执行此操作。 JSP 和 JSTL 是服务器端组件。 ID 在客户端输入。

标签: java html forms jsp jstl


【解决方案1】:

如果您想像 Sotirios Delimanolis 提到的那样在 Javascript 中尝试这个,试试这个

document.getElementById('form_id').action  = '/user/{id}'

即:

在按钮提交或 window.onload 或任何其他事件处理上执行此操作,

var id = document.getElementById('inputfieldid').value;
document.getElementById('form_id').action  = '/user/'+id;

这是另一个使用 struts 的 SO 示例: Change action attribute of Form for different action methods in Struts2

注意:在您的情况下,您需要来自 HTML 输入字段的 id,因此我们必须使用 javascript

【讨论】:

  • 我更新了我的问题。请检查一下。我添加了一些js。
  • 如果我运行它,我会得到 404 和这样的网址 http://localhost:8080/user/[object%20HTMLInputElement]
  • 如果我在 id 上调用 val(),我会得到 405(不允许的方法)。
  • var id = document.getElementById('userId').value;
  • document.getElementById('inputfieldid') 给出 HTML 元素/对象。我们必须从中获得价值。我更新了
【解决方案2】:

这样的示例:

    <form method="post" action='UserController' >

        EMPLOYEE NAME: <input type="text" name="empName" 
            value="<c:out value="${user.empName}"/>"/><br/>

    <input type="submit" value="Submit"/>
</form>

【讨论】:

  • 这里的id在哪里?
  • 这是什么?您要回答问题的哪一部分?
  • 有帮助的示例?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-30
  • 2018-09-17
  • 1970-01-01
  • 2016-03-11
  • 2021-08-11
  • 2019-07-11
相关资源
最近更新 更多