web_13&购物车主页分页显示

1.购物车主页 

<%@page import="com.zking.news.entity.Cart"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
	pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	<h2>我的购物车</h2>
	<a href="index.jsp">返回首页</a>
	<br/><br/><br/>
	<table border="1" id="tab" width="70%">
		<tr>
			<td><input onclick="checks();" type="checkbox" name="ch1" value="全选"/>全选</td>
			<th>商品名称</th>
			<th>商品类型</th>
			<th>商品图片</th>
			<th>商品价格</th>
			<th>商品数量</th>
			<th>商品总价</th>
			<th>操作</th>
		</tr>

		<%
			//商品信息显示
			int pageIndex=1;//页码
			int pageSize=3;//每页的条数
			String pIndex=request.getParameter("pageIndex");
			if(pIndex!=null){
				pageIndex=Integer.valueOf(pIndex);
			}
			List<Cart> listCarts = (List<Cart>) session.getAttribute("listCarts");
			int pageCount=listCarts.size();//总记录数
			int start=(pageIndex-1)*pageSize;
			int end=pageIndex*pageSize>pageCount?pageCount:pageIndex*pageSize;
			int pageMax=pageCount%pageSize==0?pageCount/pageSize:pageCount/pageSize+1;
			listCarts=listCarts.subList(start,end);//集合里的伪分页
			for (Cart gd : listCarts) {
		%>
		<tr id="<%=gd.getGoods().getGid()%>">
			<td><input type="checkbox" name="" value=""/></td>
			<td><%=gd.getGoods().getGname()%></td>
			<td><%=gd.getGoods().getGtype()%></td>
			<td><img style="width: 60px; height: 70px"
				src="<%=gd.getGoods().getGimage()%>" /></td>
			<td><%=gd.getGoods().getGprice()%></td>
			<td>
				<button onclick=setCount('minus',<%=gd.getGoods().getGid()%>);>-</button>
				<input type="text" name="count" value="<%=gd.getCcount()%>" style="width:30px;"/>
				<button onclick=setCount('add',<%=gd.getGoods().getGid()%>);>+</button>
			</td>
			<td><%=gd.getCtotal()%></td>
			<td><a href="doDel.jsp?gid=<%=gd.getGoods().getGid()%>">删除</a>
				<a href="javascript:editgoods(<%=gd.getGoods().getGid()%>)">修改</a>
			</td>
		</tr>
		

		<%
			}
		%>
	</table>
	
	<div style="text-align:center">
	    <a href="cart.jsp?pageIndex=<%=pageIndex-1<=0?1:pageIndex-1%>">上一页</a>
		<<%=pageIndex %>/<%=pageMax %>><a href="cart.jsp?pageIndex=<%=pageIndex+1>pageMax?pageMax:pageIndex+1%>">下一页</a>
	</div>
	
	<script type="text/javascript">
	
	function setCount(type,id){
		//获取表格对象
		var tab=document.getElementById('tab');
		var count=document.getElementById(id).cells[4].children[1].value;
		if(type=='minus'){//数量--
			if(count<2){
				alert('数量不能再少了!亲。');
			}else{
				count--;
			}
		}else if(type=='add'){//数量++
			count++;
		}
		document.getElementById(id).cells[4].children[1].value=count;
		goodsCalc();
	}
	//编写一个自动计算每个商品总价格的方法
	function goodsCalc(){
		//获取表格对象
		var tab=document.getElementById('tab');
		//获取每个行对象
		var trs=tab.rows;
		//便利获取每个对象的数量 及计算总价格
		for(var i=1;i<trs.length;i++){
			var price=trs[i].cells[3].innerHTML;//单价
			var count=trs[i].cells[4].children[1].value;//数量
			var ctotal=parseFloat(price)*parseFloat(count);//总价
			trs[i].cells[5].innerHTML=ctotal;//将总价格赋值到总价格单元格中
		}
		
	}
	//修改的点击事件
	function editgoods(gid){
		var count=document.getElementById(gid).cells[4].children[1].value;//数量
		location.href="doeditgoods.jsp?gid="+gid+"&ccount="+count;
	}
	//全选的点击事件
	function checks(){
		
	}
	</script>
	
</body>
</html>

2.购物车的删除操作

<%@page import="com.zking.news.entity.Cart"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%

//do处理页面,删除操作
//设置request编码格式
request.setCharacterEncoding("utf-8");
//获取编号
String id=request.getParameter("gid");
int gid=0;
if(id!=null){
	gid=Integer.valueOf(id);
}
List<Cart> listCarts=(List<Cart>)session.getAttribute("listCarts");
for(int i=0;i<listCarts.size();i++){
	if(listCarts.get(i).getGoods().getGid()==gid){
		listCarts.remove(i);
	}
}
//重新保存
session.setAttribute("listCarts", listCarts);
//重定向
response.sendRedirect("cart.jsp");


%>

 3.修改操作

<%@page import="com.zking.news.entity.Cart"%>
<%@page import="java.util.List"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

    <%
  //do处理页面,修改操作
  //设置request编码格式
  request.setCharacterEncoding("utf-8");
  //获取编号
  String id=request.getParameter("gid");
  int gid=0;
  if(id!=null){
  	gid=Integer.valueOf(id);
  }
  //获取数量
  String count=request.getParameter("ccount");
  int ccount=0;
  if(id!=null){
  	ccount=Integer.valueOf(count);
  }
  //获取购物车容器,便利 根据gid进行判断要修改的对象
  List<Cart> listCarts=(List<Cart>)session.getAttribute("listCarts");
  for(int i=0;i<listCarts.size();i++){
	  if(listCarts.get(i).getGoods().getGid()==gid){
		  listCarts.get(i).setCcount(ccount);
		  listCarts.get(i).setCtotal();
	  }
  }
  //重新保存到session容器
   session.setAttribute("listCarts",listCarts);
   //重定向
   response.sendRedirect("cart.jsp");
    %>
    
    
    
    
    
    
    
    
    
    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值