我可以使用锚标签提交表单吗?在此代码中,我使用的是标准的提交按钮,但如何使用锚标记<a href=Cart?removeId=${cartItem.productId>Remove</a>
我尝试了这个,但是在servlet中调用了doGet()方法。我想明显调用doPost()方法。我可以使用更好的方法。
<c:forEach items="${lstCart}" var="cartItem" varStatus="count">
<form action="Cart" method=Post>
<tr height="40px">
<td>${count.count}</td>
<td>${cartItem.productName}</td>
<td>${cartItem.quantity}</td>
<td>${cartItem.unitPrice}</td>
<td>${cartItem.totalPrice}</td>
<td>
<input type="hidden" name="id" value="${cartItem.productId}" />
<input type=submit value="x"></td>
</tr>
</form>
</c:forEach>
答案 0 :(得分:2)
您需要使用JavaScript来制作一个锚点链接。您可以使用CSS来设置提交按钮的样式,使其看起来更像是一个链接。
答案 1 :(得分:0)
是的,因为@JB说你可以使用JScript发布表单。我想到的一个例子是下面的struts,这里你实际上是将产品id作为变量传递给JS方法(我更改了名称以便它与你的例子匹配)。
<a href="#" onclick="removeProduct(${cartItem.productId})">
Remove
</a>
然后你可以让JS方法
function removeProduct(productId) {
document.forms["formname"].elements["productId"].value =
productId;
document.forms["formname"].submitTestPost.click();
}
这也假设在页面中定义了以下内容(因此JS可以设置它)和submit属性(标记为SubmitTag)。在你的情况下,我不确定设置,但也许你可以得出一些观点。
<input type="hidden" name="productId"/>