JQuery实现的购物车功能(可以减少或者添加商品并自动计算价格)


Posted in Javascript onJanuary 13, 2015

购物车点击可以减少或者添加商品并自动计算价格:

购物车中可能有这样的功能,那就是点击按钮可以实现商品数量的减少或者增加,并且能够实时的计算出总的商品价格,下面就通过代码实例介绍一下如何实现此功能,当然下面的这个模拟实现的购物车难登大雅之堂,但是可以从中得到一些启发或者相关的知识点,代码如下:

<!DOCTYPE html>

<html>

<head>

<meta charset="utf-8">

<title>三水点靠木</title>

<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>

<script type="text/javascript"> 

$(function(){ 

  $(".add").click(function(){ 

    var t=$(this).parent().find('input[class*=text_box]'); 

    t.val(parseInt(t.val())+1) 

    setTotal(); 

  }) 

  $(".min").click(function(){ 

    var t=$(this).parent().find('input[class*=text_box]'); 

    t.val(parseInt(t.val())-1) 

    if(parseInt(t.val())<0){ 

      t.val(0); 

    } 

    setTotal(); 

  }) 

  function setTotal(){ 

    var s=0; 

    $("#tab td").each(function(){ 

      s+=parseInt($(this).find('input[class*=text_box]').val())

   *parseFloat($(this).find('span[class*=price]').text()); 

    }); 

    $("#total").html(s.toFixed(2)); 

  } 

  setTotal();

}) 

</script>

</head>

<body>

<table id="tab">

  <tr>

    <td>

      <span>单价:</span><span class="price">1.50</span>

      <input class="min" name="" type="button" value="-" />

      <input class="text_box" name="" type="text" value="1" />

      <input class="add" name="" type="button" value="+" /></td>

  </tr>

  <tr>

    <td>

      <span>单价:</span><span class="price">3.95</span>

      <input class="min" name="" type="button" value="-" />

      <input class="text_box" name="" type="text" value="1" />

      <input class="add" name="" type="button" value="+" /></td>

  </tr>

</table>

<p>总价:<label id="total"></label></p>

</body>

</html>

上面的代码实现了简单的购物车功能,下面详细介绍一下它的实现过程。

代码注释:

1.$(function(){}),当文档结构完全加载完毕再去执行函数中的代码。
2.$(".add").click(function(){}),为加号按钮注册click事件处理函数。
3.var t=$(this).parent().find('input[class*=text_box]'),获取文本框,这个文本中显示的是要购买商品的数目。
4.t.val(parseInt(t.val())+1),点击一次商品数量加1。
5.setTotal(),执行此函数可以计算出总的价格并且显示。
6.$(".min").click(function(){}),为减号按钮注册click事件处理函数。
7.function setTotal(){},此函数可以计算出总价格并且显示出来。
8.var s=0,声明一个变量,此变量用来存储总价格。
9.$("#tab td").each(function(){
  s+=parseInt($(this).find('input[class*=text_box]').val())*parseFloat($(this).find('span[class*=price]').text());
});
可以遍历文本框并乘以单价,然后进行累加,最后计算出来的总价格。

Javascript 相关文章推荐
VBS通过WMI监视注册表变动的代码
Oct 27 Javascript
推荐8款jQuery轻量级树形Tree插件
Nov 12 Javascript
在JavaScript中操作时间之getYear()方法的使用教程
Jun 11 Javascript
javascript实现将文件保存到本地方法汇总
Jul 26 Javascript
JS仿淘宝实现的简单滑动门效果代码
Oct 14 Javascript
js+css实现回到顶部按钮(back to top)
Mar 02 Javascript
巧用weui.topTips验证数据的实例
Apr 17 Javascript
jquery dataTable 后台加载数据并分页实例代码
Jun 07 jQuery
微信{"errcode":48001,"errmsg":"api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]"}
Oct 12 Javascript
基于vue通用表单解决方案的思考与分析
Mar 16 Javascript
vue实现菜单切换功能
May 08 Javascript
vue中npm包全局安装和局部安装过程
Sep 03 Javascript
jquery删除指定子元素代码实例
Jan 13 #Javascript
JavaScript删除指定子元素代码实例
Jan 13 #Javascript
JS长整型精度问题实例分析
Jan 13 #Javascript
javascript面向对象之共享成员属性与方法及prototype关键字用法
Jan 13 #Javascript
javascript面向对象之定义成员方法实例分析
Jan 13 #Javascript
jQuery大于号(&gt;)选择器的作用解释
Jan 13 #Javascript
javascript面向对象之this关键词用法分析
Jan 13 #Javascript
You might like
超神学院:鹤熙已踏入神圣领域,实力不比凯莎弱
2020/03/02 国漫
PHP截取中文字符串的问题
2006/07/12 PHP
YII框架中使用memcache的方法详解
2017/08/02 PHP
鼠标滚轮控制网页横向移动实现思路
2013/03/22 Javascript
购物车选中得到价格实现示例
2014/01/26 Javascript
使用JQuery库提供的扩展功能实现自定义方法
2014/09/09 Javascript
JavaScript模拟重力状态下抛物运动的方法
2015/03/03 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
AngularJS指令与控制器之间的交互功能示例
2016/12/14 Javascript
react-router browserHistory刷新页面404问题解决方法
2017/12/29 Javascript
React-router4路由监听的实现
2018/08/07 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
加快Vue项目的开发速度的方法
2018/12/12 Javascript
小程序日历控件使用方法详解
2018/12/29 Javascript
JavaScript模块管理的简单实现方式详解
2019/06/15 Javascript
axios异步提交表单数据的几种方法
2019/08/11 Javascript
详解ES6数组方法find()、findIndex()的总结
2020/05/12 Javascript
VUE Elemen-ui之穿梭框使用方法详解
2021/01/19 Javascript
Python简单日志处理类分享
2015/02/14 Python
Python实现从脚本里运行scrapy的方法
2015/04/07 Python
Python文件读取的3种方法及路径转义
2015/06/21 Python
Python入门之三角函数sin()函数实例详解
2017/11/08 Python
pandas 小数位数 精度的处理方法
2018/06/09 Python
基于pycharm导入模块显示不存在的解决方法
2018/10/13 Python
Django 自定义权限管理系统详解(通过中间件认证)
2020/03/11 Python
AmazeUI 手机版页面的顶部导航条Header与侧边导航栏offCanvas的示例代码
2020/08/19 HTML / CSS
澳大利亚的奢侈品牌:Oroton
2016/08/26 全球购物
门诊挂号室室长岗位职责
2013/11/27 职场文书
员工培训邀请函
2014/01/11 职场文书
施工质量承诺书范文
2014/05/30 职场文书
2014年营业员工作总结
2014/11/18 职场文书
2015初一年级组工作总结
2015/07/24 职场文书
帮你提高开发效率的JavaScript20个技巧
2021/06/18 Javascript
java泛型通配符详解
2021/07/25 Java/Android
Nginx代理Redis哨兵主从配置的实现
2022/07/15 Servers
Java Redisson多策略注解限流
2022/09/23 Java/Android