简体   繁体   English

如何将参数从 JSP 页面发送到没有<form>元素</form>

[英]How to send parameters from a JSP page to a Servlet without a <form> element

I'm trying to send a string containing a "command" to my Servlet controller's doGet method and request.getParameter().我正在尝试向我的 Servlet 控制器的 doGet 方法和 request.getParameter() 发送一个包含“命令”的字符串。

The tutorial I watched on this subject used both a form tag and a param tag embedded in a link to send params back to the doGet.我在这个主题上观看的教程使用嵌入在链接中的表单标记和参数标记将参数发送回 doGet。

Link and param:链接和参数:

<c:url var="deleteLink" value="StudentControllerServlet">
                <c:param name="command" value="DELETE" />
                <c:param name="studentId" value="${tempStudent.id}" />
            </c:url>

Form:形式:

<form action="StudentControllerServlet" method="GET">

        <input type="hidden" name="command" value="UPDATE">

        <input type="hidden" name="studentId" value="${THE_STUDENT.id}">

        <table>
            <tbody>
                <tr>
                    <td><label>First Name:</label></td>
                    <td><input type="text" name="firstName" value="${THE_STUDENT.firstName}"/></td>
                </tr>
                <tr>
                    <td><label>Last Name:</label></td>
                    <td><input type="text" name="lastName" value="${THE_STUDENT.lastName}" /></td>
                </tr>
                <tr>
                    <td><label>Email:</label></td>
                    <td><input type="text" name="email" value="${THE_STUDENT.email}" /></td>
                </tr>
                <tr>
                    <td><label></label></td>
                    <td><input type="submit" value="Save" class="save" /></td>
                </tr>
            </tbody>
        </table>
    </form>

Neither of these work for me, I want to click a button that takes me to another page and simultaneously sends a param back to the doGet.这些都不适合我,我想单击一个按钮将我带到另一个页面并同时将参数发送回 doGet。

Is there a good way to do this, or am I doing it wrong?有没有好的方法可以做到这一点,还是我做错了?

Yes, you can do that.是的,你可以这么做。 In the servlet that you trigger via GET request, first process the parameter that your browser sent to the servlet.在通过 GET 请求触发的 servlet 中,首先处理浏览器发送给 servlet 的参数。 Then you can send browser to another URL using sendRedirect() .然后您可以使用sendRedirect()将浏览器发送到另一个 URL 。 See an example here .请参阅此处的示例

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM