用js+cookie实现商城的购物车功能

页面上的添加功能主要就是两个按钮
<input name="buy" type="image" alt="第一个商品" src="data:images/buy.gif" align="middle" onclick="getInfo();" style="float:left;" />
<h1>商品1</h1><br/>
<input type="image" alt="第二个商品" src="data:images/buy.gif" align="middle" onclick='common.intoCart(88,"test",60,50,1);' style="float:left;" />
<h1>商品2</h1>
购物车页面

//页面加载时执行
window.onload = function() {
//更新购物车
getCartInfo();
};
/*
* 删除左右两端的空格
*/
function trim(str)
{
return str.replace(/(^\s*)|(\s*$)/g, '');
}
/*
* 验证是否是数字
*/
function isNum(str){
return str.match(/\D/)==null;
}
//设置商品数量
function setQuantity(goods_id,obj){
//判断输入的购买数量是否合法
var goods_count=trim(obj.value);
var next_obj=obj.nextSibling;
var old_goods_count=trim(next_obj.value);
//判断输入的购买数量是否合法
if(isNum(goods_count) && goods_count!= old_goods_count && goods_count!=0)
{
//更改商品的购买数量
common.updateQuantity(goods_id,goods_count);
}else{
//重置商品的购买数量
obj.value = old_goods_count;
}
}
//取得购物车信息
function getCartInfo(){
var str="";
var amount=0;
var _div = document.getElementById("goods_info");
//从Cookie中取出商品信息列表,并将其转化为数组
var arr = common.convertArray();
//如果数组是否为空
if(arr != "" && arr != null && arr != "null")
{
//将商品信息从数组中循环取出
for(i=0;i < arr.length;i++)
{
str+='<ul><li class="li_name">'+arr[i][1]+
'</li><li class="li_pice">'+arr[i][2]+
'</li><li class="li_pice">'+arr[i][3]+
'</li><li class="li_pice"><input type="text" value="'+arr[i][4]+
'" onBlur="setQuantity('+arr[i][0]+
',this);" /><INPUT type=hidden value='+arr[i][4]+
'></li><li class="li_del"><input type="image" src="data:images/trash.gif" onclick="common.reMoveOne('+arr[i][0]+
');" /></li></ul>';
//计算商品总额
amount+=arr[i][3]*arr[i][4];
}
//替换页面
_div.innerHTML = str;
}else{
str = '<ul><li class="li_no">您还没有挑选商品</li></ul>';
//替换页面
_div.innerHTML = str;
}
//重置总金额
document.getElementById("amount").innerText = amount;
}
</script>
js页面太多了
demo地址
链接:http://pan.baidu.com/s/1cD1cbO 密码:9prl
用js+cookie实现商城的购物车功能的更多相关文章
- 给destoon商城的列表中和首页添加购物车功能
如何给destoon商城的列表中和首页添加购物车功能? 目前加入购物车的功能只存在商城的详细页面里,有时候我们需要批量购买的时候,希望在列表页就能够使用这个加入购物车的功能. 修改步骤见下: 例如在商 ...
- 基于vue2.0打造移动商城页面实践 vue实现商城购物车功能 基于Vue、Vuex、Vue-router实现的购物商城(原生切换动画)效果
基于vue2.0打造移动商城页面实践 地址:https://www.jianshu.com/p/2129bc4d40e9 vue实现商城购物车功能 地址:http://www.jb51.net/art ...
- 【JSP】Cookie的使用及保存中文,并用Cookie实现购物车功能
Cookie是服务器存放在客户端的一些数据,比如密码,以及你曾经访问过的一些数据. 设置Cookie //设置cookie Cookie cookie = new Cookie("TOM&q ...
- JS实现添加至购物车功能
效果图展示: 当将书拖拽至购物车一览时: 首先将页面的基本结构写出来: <!DOCTYPE html> <html lang="en"> <head& ...
- Vue nodejs商城项目-商品列表价格过滤和加入购物车功能
一.价格过滤功能 GoodsList.vue >>点击价格区间时发送请求 methods:{ getGoodsList(flag){ var param = { ...
- javaweb学习——session和Cookie实现购物车功能
1.创建Book类,实现对图书信息的封装. package cn.it.sessionDemo.example1; import java.io.Serializable; /** * 该类实现对图书 ...
- Cookie实现购物车功能
这里的购物车暂时存放书,后期把参数改成Object,把方法抽取成接口,只要实现了接口的Object类都可以放进购物项,这样就实现了购物任何物品 使用购物项因为一个购物项可以包含某种商品的数量,总价等, ...
- ASP.NET之电子商务系统开发-2(购物车功能)
一.前言 继上次的首页数据列表后,这是第二篇.记录一下购物车这个比较庞大的功能,可能实现的方法跟其他人有点不一样,不过原理都差不多,是将cookie存数据库里面的. 二.开始 首先看一下购物车流程及对 ...
- jQuery 复制节点的元素实现加入到购物车功能
描写叙述: 用户点击左边div中的商品,相应商品会自己主动加入到右面的div中,类似电子商城中的加入到购物车功能. 主要用到了jquery中的复制节点功能,基本原理是首先获取点击的元素,然后将对应信息 ...
随机推荐
- 微信公众平台跳转网页url详解
1.利用Tomcat服务器部署项目,本地访问可以获取路径资源 2.开辟外网映射,实现全网访问 利用nat123端口映射工具 全网访问 3.将所获取的域名和端口设置到微信页面跳转的url,就完成了该项功 ...
- AVFoundation之如何从摄像头获取图像
前言: 最近项目有个需求是对试图对手机密码进行强破解的人进行拍照(通过摄像头截图),因为之前没做过,所以一堆坑.现在就把我的经验都分享出来,希望后来人不用再踏上坑途中. 直接上代码: // 创建会话 ...
- jQuery kxbdMarquee 无缝滚动
转:http://code.ciaoca.com/jquery/kxbdmarquee/ <marquee> 曾是 IE 下独有的一个走马灯效果的标签,其他浏览器并不兼容,于是出现了使用 ...
- 关于cursor的各种属性应用
<html> <body> <p>请把鼠标移动到单词上,可以看到鼠标指针发生变化:</p> <span style="cursor:au ...
- CUDA随机数生成库curand——deviceAPI
原创作品,如要转载请注明出处:http://www.cnblogs.com/shrimp-can/p/6590152.html 最近要在device函数中使用curand库生成随机数,查找了下资料,除 ...
- Windows:将cmd命令行添加到右键中方法
win10中将命令行cmd添加到右键的方法 Windows cmd 右键 win10 命令行 最近在学python,所以会用到很多库文件,但是有的库文件需要下载whl文件再通过cmd进行安装,所以每次 ...
- J2那几个E和Web基础
收到PHP童鞋的反馈: 我觉得不用讲太基础的语法,基础语法大家自己去看,主要讲讲java web开发的一个流程,从开始写代码,到编译,发布,上线,回滚整个流程 大体上的环节,以及需要用到哪些工具 具体 ...
- centos6.5 源码安装 gtk 环境
解决 No package 'gtk+-2.0′ found问题方法:yum install libgnomeui-devel 执行了上面的,下面的就可以放弃了,yum 大法好 首先 yum 安装下面 ...
- 实时消息传输协议(RTMP)详解
一.概念与摘要 RTMP协议从属于应用层,被设计用来在适合的传输协议(如TCP)上复用和打包多媒体传输流(如音频.视频和互动内容).RTMP提供了一套全双工的可靠的多路复用消息服务,类似于TCP协议[ ...
- sql语句实现累计数
前言,要实现按某个字段统计,直接用count/sum……group by语句就可以实现,但是要实现累计统计,比如按时间累计统计,从12月3号开始累计数据,比如:4号统计3.4号的数据,5号统计3.4. ...