只需给单个按钮元素一个唯一的名称。当按下时,按钮的名称可作为请求参数,通常与输入元素一样。
您只需要确保按钮输入的type =“submit”,如< input type =“submit”>和< button type =“submit”>而不是type =“button”,它只会渲染一个“死”按钮,仅用于onclick的东西和全部。
例如。
同
@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>的值不会被用作标签,您可以将自己指定为孩子。
例如。
Button 1
Button 2
Button 3
同
@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);
}
}
也可以看看: