jQuery实现购物车计算价格功能的方法


Posted in Javascript onMarch 25, 2015

本文实例讲述了jQuery实现购物车计算价格功能的方法。分享给大家供大家参考。具体如下:

目的

实现在html界面修改购物车的件数,购物车商品价格的小计和总计要修改。

实现思路

1.当点击进入界面,刷新的时候触发body内的onload=""方法,跳转到JS代码。这样做的原因是在数据库内我们只会存储某客户的准备购买的商品件数,而不会存储每类商品价格的小计和购物车内所有物品的商品总价格,初始化的目的就是为将这些数字计算出来后显示在前台界面上。

2.当更改数量输入框中每个商品的数量时,整个购物表商品的价格,商品的小计和总计会根据数量发生变化。

成品样图展示

全部代码(火狐浏览器)

jQuery实现购物车计算价格功能的方法

<!DOCTYPE HTML>
<html>
 <head>
  <title>cart</title>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <!-- 要把jquery-1.9.1.min.js导进去,不导出不来 -->
  <script type="text/javascript" src="jquery-1.9.1.min.js"></script>
  <script language="javascript">
$(function(){
var size=3.0*$('#image1').width();
$("#image1").mouseover(function(event) {
var $target=$(event.target);
if($target.is('img'))
{
$("<img id='tip' src='"+$target.attr("src")+"'>").css({
"height":size,
"width":size,
}).appendTo($("#imgtest"));/*将当前所有匹配元素追加到指定元素内部的末尾位置。*/
}
}).mouseout(function() {
$("#tip").remove();/*移除元素*/
})

})
</script>
  <script type="text/javascript">
function total(id)
{
/*计算单个的价格*/
var quantity=document.getElementById("quantity"+id).value;
var price=document.getElementById("price"+id).value;
var smallTotal=quantity*price;
var smallT=document.getElementById("smallTotal"+id);
smallT.innerHTML=smallTotal;

/*计算总价格*/
var totalPrice=0;
for(var a=1;a<3;a++){
var quantity=document.getElementById("quantity"+a).value;
var price=document.getElementById("price"+a).value;
var smallTotal=quantity*price;
totalPrice=totalPrice+smallTotal;
}
var total=document.getElementById("total");
total.innerHTML=totalPrice;
}
</script>
  <script type="text/javascript">
function initialize()
{
var totalPrice=0;
for(var a=1;a<3;a++){
var quantity=document.getElementById("quantity"+a).value;
var price=document.getElementById("price"+a).value;
var smallTotal=quantity*price;
totalPrice=totalPrice+smallTotal;
/*alert(smallTotal);*/
var smallT=document.getElementById("smallTotal"+a);
smallT.innerHTML=smallTotal;
}
/*取出购物车的所有商品的价格总和*/
var total=document.getElementById("total");
total.innerHTML=totalPrice;
}
</script>
  <style type="text/css">
#imgtest {
 position: absolute;
 top: 100px;
 left: 400px;
 z-index: 1;
}
table {
 left: 100px;
 font-size: 20px;
}
</style>
 </head>
 <body onload="initialize()">
  <div id="imgtest"></div>
  <br />
  <br />
  <table border="1" style="text-align: center;" align="center">
   <thead style="height: 50">
    <td style="WIDTH: 300px">
     商品名称
    </td>
    <td style="WIDTH: 60px">
     图片
    </td>
    <td style="WIDTH: 170px">
     数量
    </td>
    <td style="WIDTH: 170px">
     价格
    </td>
    <td style="WIDTH: 250px">
     小计
    </td>
   </thead>
   <tbody>
    <tr>
     <td class="name">商品1</td>
     <td class="image">
      <img src="1.jpg" width="40px" height="40px" id="image1"/>
     </td>
     <td class="quantity">
      <input id="quantity1" value="1" onblur="total(1);"/>
     </td>
     <td class="price">
      <input type="hidden" id="price1" value="20"/>
      20
     </td>
     <td class="total">
      <span id="smallTotal1"></span> 元
     </td>
    </tr>
    <tr>
     <td class="name">商品2</td>
     <td class="image">
      <img src="1.jpg" width="40px" height="40px" id="image1"/>
     </td>
     <td class="quantity">
      <input id="quantity2" value="2" onblur="total(2);"/>
     </td>
     <td class="price">
      <input type="hidden" id="price2" value="30"/>
      30
     </td>
     <td class="total">
      <span id="smallTotal2"></span> 元
     </td>
    </tr>
    <tr>
     <td colspan="4" class="cart_total">
      <br>
     </td>
     <td>
      <span class="red">总计:</span><span id="total"></span>  元
     </td>
    </tr>
   </tbody>
  </table>
 </body>
</html>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
js 操作select和option常用代码整理
Dec 13 Javascript
jQuery之排序组件的深入解析
Jun 19 Javascript
JavaScript代码轻松实现网页内容禁止复制(代码简单)
Oct 23 Javascript
jquery trigger函数执行两次的解决方法
Feb 29 Javascript
基于jquery实现表格内容筛选功能实例解析
May 09 Javascript
JS实现动态表格的添加,修改,删除功能(推荐)
Jun 15 Javascript
BootStrap框架个人总结(bootstrap框架、导航条、下拉菜单、轮播广告carousel、栅格系统布局、标签页tabs、模态框、菜单定位)
Dec 01 Javascript
JS中IP地址与整数相互转换的实现代码
Apr 10 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
Oct 01 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
Mar 15 Javascript
Vue 解决父组件跳转子路由后当前导航active样式消失问题
Jul 21 Javascript
Jquery $.map使用方法实例详解
Sep 01 jQuery
JavaScript的事件代理和委托实例分析
Mar 25 #Javascript
JS实现简易图片轮播效果的方法
Mar 25 #Javascript
jquery处理页面弹出层查询数据等待操作实例
Mar 25 #Javascript
JavaScript动态添加列的方法
Mar 25 #Javascript
javascript实现复选框选中属性
Mar 25 #Javascript
jQuery的load()方法及其回调函数用法实例
Mar 25 #Javascript
jQuery使用$.get()方法从服务器文件载入数据实例
Mar 25 #Javascript
You might like
PHP开发的一些注意点总结
2010/10/12 PHP
基于PHP Web开发MVC框架的Smarty使用说明
2013/04/19 PHP
PHP中func_get_args(),func_get_arg(),func_num_args()的区别
2013/09/30 PHP
限制ckeditor上传图片文件大小的方法
2013/11/15 PHP
php中ob函数缓冲机制深入理解
2015/08/03 PHP
PHP实现的一致性哈希算法完整实例
2015/11/14 PHP
PHP生成各种随机验证码的方法总结【附demo源码】
2017/06/05 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
在新窗口打开超链接的方法小结
2013/04/14 Javascript
js中使用replace方法完成某个字符的转换
2014/08/20 Javascript
微信小程序 参数传递详解
2016/10/24 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
JavaScript中错误正确处理方式小结你用对了吗
2017/10/10 Javascript
layui switch 开关监听 弹出确定状态转换的例子
2019/09/21 Javascript
JS实现星星海特效
2019/12/24 Javascript
5个你不知道的JavaScript字符串处理库(小结)
2020/06/01 Javascript
Vue包大小优化的实现(从1.72M到94K)
2021/02/18 Vue.js
[56:46]Liquid vs IG 2018国际邀请赛小组赛BO2 第二场 8.17
2018/08/18 DOTA
Python中的包和模块实例
2014/11/22 Python
深入了解Python数据类型之列表
2016/06/24 Python
linux查找当前python解释器的位置方法
2019/02/20 Python
Python基础学习之时间转换函数用法详解
2019/06/18 Python
在Django下创建项目以及设置settings.py教程
2019/12/03 Python
在Python中用GDAL实现矢量对栅格的切割实例
2020/03/11 Python
利用OpenCV中对图像数据进行64F和8U转换的方式
2020/06/03 Python
python处理写入数据代码讲解
2020/10/22 Python
美国男女折扣服饰百货连锁店:Stein Mart
2017/05/02 全球购物
俄罗斯最大的消费电子连锁零售商:Mvideo
2017/06/25 全球购物
皮尔·卡丹巴西官方商店:Pierre Cardin
2017/07/21 全球购物
澳大利亚领先的在线葡萄酒零售商:Get Wines Direct
2018/03/27 全球购物
印度服装购物网站:Limeroad
2018/09/26 全球购物
人力资源部副职的竞聘演讲稿
2014/01/07 职场文书
关于廉洁的广播稿
2014/01/30 职场文书
安全生产知识竞赛活动总结
2014/07/07 职场文书
入党转正介绍人意见
2015/06/03 职场文书
Redis延迟队列和分布式延迟队列的简答实现
2021/05/13 Redis