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 页面执行时间计算代码
Mar 04 Javascript
jq实现酷炫的鼠标经过图片翻滚效果
Mar 12 Javascript
javascript学习笔记(五)原型和原型链详解
Oct 08 Javascript
js正则表达式匹配数字字母下划线等
Apr 14 Javascript
javascript生成随机数方法汇总
Nov 12 Javascript
jQuery插件imgPreviewQs实现上传图片预览
Jan 15 Javascript
第四篇Bootstrap网格系统偏移列和嵌套列
Jun 21 Javascript
Angular2开发——组件规划篇
Mar 28 Javascript
jquery ajax异步提交表单数据的方法
Oct 27 jQuery
关于JavaScript语句后面的分号问题
Dec 07 Javascript
JS实现图片居中悬浮效果
Dec 25 Javascript
Javascript Promise用法详解
May 10 Javascript
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中adodbzip类实例
2014/12/08 PHP
PHP提取字符串中的手机号正则表达式怎么写
2017/07/17 PHP
javascript 无提示关闭窗口脚本
2009/08/17 Javascript
用cssText批量修改样式
2009/08/29 Javascript
复选框全选与全不选操作实现思路
2013/08/18 Javascript
JS滚轮事件onmousewheel使用介绍
2013/11/01 Javascript
javascript判断是否按回车键并解决浏览器之间的差异
2014/05/13 Javascript
分享五个有用的jquery小技巧
2015/10/08 Javascript
JavaScript过滤字符串中的中文与空格方法汇总
2016/03/07 Javascript
微信小程序 数据封装,参数传值等经验分享
2017/01/09 Javascript
jQuery实现别踩白块儿网页版小游戏
2017/01/18 Javascript
关于angular js_$watch监控属性和对象详解
2017/04/24 Javascript
原生JS实现层叠轮播图
2017/05/17 Javascript
React学习笔记之事件处理(二)
2017/07/02 Javascript
使用validate.js实现表单数据提交前的验证方法
2018/09/04 Javascript
JavaScript简单实现动态改变HTML内容的方法示例
2018/12/25 Javascript
bootstrap-table实现表头固定以及列固定的方法示例
2019/03/07 Javascript
浅谈Javascript中的对象和继承
2019/04/19 Javascript
在Python中利用Into包整洁地进行数据迁移的教程
2015/03/30 Python
Python中处理字符串的相关的len()方法的使用简介
2015/05/19 Python
python之Character string(实例讲解)
2017/09/25 Python
删除python pandas.DataFrame 的多重index实例
2018/06/08 Python
pycharm下配置pyqt5的教程(anaconda虚拟环境下+tensorflow)
2020/03/25 Python
Python接口自动化测试框架运行原理及流程
2020/11/30 Python
python解包概念及实例
2021/02/17 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
Html5 canvas画图白板踩坑
2020/06/01 HTML / CSS
巴西宠物店在线:Geração Pet
2017/05/31 全球购物
旅游管理实习自我鉴定
2013/09/29 职场文书
采购员的工作职责
2013/12/26 职场文书
网络编辑职责
2014/03/01 职场文书
2015迎新晚会开场白
2015/07/17 职场文书
2015初一年级组工作总结
2015/07/24 职场文书
2016先进集体事迹材料范文
2016/02/25 职场文书
你知道哪几种MYSQL的连接查询
2021/06/03 MySQL
聊聊mysql都有哪几种分区方式
2022/04/13 MySQL