单击要提交给servlet1的图像并确定单击了哪个图像。应该将asnwer重定向到index.jsp并在“单击状态”后显示。如何让它在servlet端工作?如何使用request.getParameter来确定单击了哪个图像?
index.jsp(partial)
<%
String message = "NoImageWasClicked";
if (session.getAttribute("message") != null) {
message = session.getAttribute("message");
}
%>
<form method="post" action="servlet1">
<input id='img1' type='image' onclick='submit()'/>
<input id='img2' type='image' onclick='submit()'/>
<input id='img2' type='image' onclick='submit()'/>
Clicking status: <%=message%>
</form>
servlet1:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setContentType("text/html;charset=UTF-8");
request.getParameter ( ??????????? )
???????
request.getSession().setAttribute("message", ????????);
response.sendRedirect("index.jsp");
}
答案 0 :(得分:2)
您无需使用任何onclick处理程序来提交表单。这就是图像类型输入本身的原因。将表单方法更改为get
并分析浏览器位置栏以查看发送的参数。或者使用Firebug。或者阅读输入标签的the documentation或输入图像:
在表单提交期间通过发送将坐标发送到服务器 元素的两个条目,从控件的名称派生而来 将“.x”和“.y”附加到名称中,其中包含x和y组件 分别是坐标。