-
子衿沉夜
只需给各个按钮元素一个唯一的名称即可。按下按钮后,按钮的名称可用作请求参数,就像输入元素一样。您只需要确保按钮输入的type="submit"in <input type="submit">和<button type="submit">and not一样 type="button",这仅呈现一个“死”按钮,仅用于onclick填充所有内容。例如<form action="${pageContext.request.contextPath}/myservlet" method="post"> <input type="submit" name="button1" value="Button 1" /> <input type="submit" name="button2" value="Button 2" /> <input type="submit" name="button3" value="Button 3" /></form>与@WebServlet("/myservlet")public class MyServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { MyClass myClass = new MyClass(); if (request.getParameter("button1") != null) { myClass.method1(); } else if (request.getParameter("button2") != null) { myClass.method2(); } else if (request.getParameter("button3") != null) { myClass.method3(); } else { // ??? } request.getRequestDispatcher("/WEB-INF/some-result.jsp").forward(request, response); }}另外,也可以使用<button type="submit">代替<input type="submit">,然后为它们赋予相同的名称,但使用唯一的值。的值<button>将不会用作标签,您只需将自己指定为孩子即可。例如<form action="${pageContext.request.contextPath}/myservlet" method="post"> <button type="submit" name="button" value="button1">Button 1</button> <button type="submit" name="button" value="button2">Button 2</button> <button type="submit" name="button" value="button3">Button 3</button></form>与@WebServlet("/myservlet")public class MyServlet extends HttpServlet { @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { MyClass myClass = new MyClass(); String button = request.getParameter("button"); if ("button1".equals(button)) { myClass.method1(); } else if ("button2".equals(button)) { myClass.method2(); } else if ("button3".equals(button)) { myClass.method3(); } else { // ??? } request.getRequestDispatcher("/WEB-INF/some-result.jsp").forward(request, response); }}
-
Smart猫小萌
<form method="post" action="servletName"> <input type="submit" id="btn1" name="btn1"/> <input type="submit" id="btn2" name="btn2"/></form> 在按下它时,请求将转到servlet页面上的servlet,检查按下了哪个按钮,然后相应地将所需的方法作为objectName.method调用
-
潇湘沐
如果您有web.xml,那么HTML / JSP<form action="${pageContext.request.contextPath}/myservlet" method="post"> <input type="submit" name="button1" value="Button 1" /></form>web.xml<servlet> <display-name>Servlet Name</display-name> <servlet-name>myservlet</servlet-name> <servlet-class>package.SomeController</servlet-class></servlet><servlet-mapping> <servlet-name>myservlet</servlet-name> <url-pattern>/myservlet</url-pattern></servlet-mapping>Java SomeController.javapublic void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Write your code below");}