我想不使用提交按钮来传递隐藏值。
我希望用户单击项目图像,它将使他们进入项目详细信息。
因此,如果他们单击下面显示的西红柿,它将带他们到西红柿页面。
这就是我的工作
jsp:
<form action="ItemDetail" method="get" name="itemForm" id="itemForm">
<input type="hidden" name="itemId" id="itemId" value="<%= i.getItemID() %>">
<a href="javascript: submitForm()">
<img src="<%=i.getImg()%>"
</a>
</form>
javascript:
function submitForm(){
document.forms["itemForm"].submit();
}
servlet:
String itemId = request.getParameter("itemId");
答案 0 :(得分:0)
我终于找到原因了。 javascript提交所有表单,因为它们都具有相同的名称,因此我更改了表单ID,并且未更改servlet
<form action="ItemDetail" method="get" name="itemForm" id="itemForm<%= i.getItemID() %>">
<a href="javascript:{}" onclick="document.getElementById('itemForm<%= i.getItemID() %>').submit();">
<input type="hidden" name="itemId" id="itemId" value="<%= i.getItemID() %>">
<img src="<%=i.getImg()%>"
</a>
</form>