清空购物车
实现功能:
用户点击购物车中的清空购物车链接时,删除所有购物项,总金额清零。
cart.jsp
为清空购物车链接增加onclick属性,并使用js实现clearCart方法。
<a href="#" id="clear" class="clear" onclick="clearCart()">清空购物车</a>
......
<script type="text/javascript">
function clearCart(){
location.href="${pageContext.request.contextPath}/product?method=clearCart";
}
</script>
ProductServlet.java
在ProductServlet.java的doGet方法中添加clearCart的判断,并完成clearCart方法。
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
String method = request.getParameter("method");
if("getProById".equals(method)) {
getProById(request, response);
}else if("findListByCate".equals(method)) {
findListByCate(request, response);
}else if("cart".equals(method)) {
cart(request, response);
}else if("delCart".equals(method)) {
delCart(request, response);
}else if("clearCart".equals(method)) {
clearCart(request, response);
}
}
public void clearCart(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取购物车
HttpSession session = request.getSession();
Cart cart = (Cart) session.getAttribute("cart");
cart.setMap(new HashMap<>());//删除所有购物项
cart.setSubMoney(0.0);//总金额清零
//返回购物车页面
request.getRequestDispatcher("/cart.jsp").forward(request, response);
}