jQuery实现购物车计算价格功能的方法
本文实例讲述了jQuery实现购物车计算价格功能的简易方法,做的比较简单,现分享给大家供大家参考。具体如下:
目的:
<%@ 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>jQuery实现的购物车功能</title>
<!-- 使用绝对路径引入 jQuery库文件 -->
<script type="text/javascript"
src="${pageContext.request.contextPath }/js/jquery-1.11.2.js"></script>
<script type="text/javascript">
$(function() {
//根据类选择器,当点击 添加商品按钮的时候触发,为加号按钮注册click事件处理函数
$(".add").click(function() {
var t = $(this).parent().find('input[class*=text_box]');
//每点击添加 按钮1次,商品数量加1
t.val(parseInt(t.val()) + 1);
//再调用计算商品总价方法
setTotal();
}); //根据类选择器,当点击 减号 按钮的时候触发
$(".min").click(function() {
var t = $(this).parent().find('input[class*=text_box]');
//每点击减少按钮1次,商品数量减1
t.val(parseInt(t.val()) - 1);
//当文本框的值为减少到小于等于1时候,取值1
if (parseInt(t.val()) < 0) {
t.val(0);
}
//再调用计算商品总价方法
setTotal();
}); //计算总价格的函数
function setTotal() {
var s = 0;
//each 遍历
$("#tab td").each(
function() {
//find()方法 遍历input标签中的后代, class名为 text_box中 文本框 中的值,即:商品的数量,乘以商品的价格
s += parseInt($(this).find('input[class*=text_box]').val())*
parseFloat($(this).find('span[class*=price]').text());
});
//将计算的结果通过 jQuery的 html()方法赋予给 总价,并通过 toFixed()进行取舍
$("#total").html(s.toFixed(2));
}
//再调用计算商品总价方法
setTotal();
});
</script>
</head>
<body>
<table id="tab">
<tr>
<td><span>商品单价:</span><span class="price">2.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">7.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>
</table>
<p>
总价:<label id="total"></label>(元)
</p>
</body>
</html>
项目源码
实现在jsp界面修改购物车商品的件数,点击按钮可以实现商品数量的减少或者增加,并且能够实时的计算出总的商品价格。
实现思路:
文件中的代码实现了简单的购物车根据数量,计算总价的功能,源码可以直接导入运行,下面详细介绍一下它的实现过程。
1、引入jQuery的库文件
<!-- 使用绝对路径引入 jQuery库文件 -->
<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery-1.11.2.js"></script>
2、编写一个 table,搭建主体内容
3、编写jQuery代码
①、$(function(){}),当文档结构完全加载完毕再去执行函数中的代码;
②、$(".add").click(function(){}),为加号按钮注册click事件处理函数;
③、点击加号按钮的时候执行的代码
④、var t=$(this).parent().find('input[class*=text_box]'),获取文本框,这个文本中显示的是要购买商品的数目;
⑤、t.val(parseInt(t.val())+1),点击一次商品数量加1;
⑥、setTotal(),执行此函数可以计算出总的价格并且显示;
⑦、$(".min").click(function(){}),为减号按钮注册click事件处理函数;
⑧、计算总价格的函数
⑨、var s=0,声明一个变量,此变量用来存储总价格。
⑩、$("#tab td").each(function(){
s+=parseInt($(this).find('input[class*=text_box]').val())*parseFloat($(this).find('span[class*=price]').text());
});
可以遍历文本框并乘以单价,然后进行累加,最后计算出来的总价格。
4、运行效果展示:
以上是一个jQuery实现购物车计算价格功能的方法,写的比较简单,可以作为jQuery初学者的入门学习素材,以强化jQuery基本语法的学习。
jQuery实现购物车计算价格功能的方法的更多相关文章
- js购物车计算价格
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta nam ...
- JQuery UI的拖拽功能实现方法小结
JQuery UI提供的API极大简化了拖拽功能的开发.只需要分别在拖拽源(source)和目标(target)上调用draggable和droppable两个函数即可. 拖拽原理 首先要明确几个概念 ...
- Android中购物车的全选、反选、问题和计算价格
此Demo主要解决的是购物车中的全选,反选计算价格和选中的条目个数的问题,当选中几条时,点击反选,会把当先选中的变为不选中,把不选中的变为选中.点击全选会全部选中,再次点击时,变为全部不选中. //- ...
- 非node环境下的vue.js 实现简单的购物车计算功能 样式请无视
都说vue的双向数据绑定好用,自己用了下,感觉做购物车没想象中好用.自己的实现如下: <!DOCTYPE html> <html lang="en"> &l ...
- jQuery实现购物车多物品数量的加减+总价计算
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3. ...
- jQuery实现购物车多物品数量的加减+总价+删除计算
<?php session_start(); ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//E ...
- Django day 38 结算中心,支付中心,计算价格方法
一:结算中心 二:支付中心 三:计算价格方法
- Jquery实现购物车物品数量的加减特效
今天网友翠儿在用Jquery实现购物车物品数量的加减特效的时候遇到问题来问我,我后来帮她解决了这个Jquery特效,现在把它整理出来分享给大家用,虽然功能比较简单,但是很实用. 主要包括了以下功能: ...
- jQuery实现购物车物品数量的加减
基于jquery的一款代码,实现购物车数据的加减,在淘宝网.京东商城购物时时经常见到的一个功能,点击文本框两侧的“+”与“-”,就可以增加或减少文本框内的数字值,每次步长为1,当然这个是可以自己设置的 ...
随机推荐
- Java中的数据类型转换
先来看一个题: Java类Demo中存在方法func0.func1.func2.func3和func4,请问该方法中,哪些是不合法的定义?( ) public class Demo{ float fu ...
- C++11 之for 新解 auto
C++11 之for 新解 auto 前言 C++11这次的更新带来了令很多C++程序员期待已久的for range循环,每次看到javascript, lua里的for range,心想要是 ...
- BaseActivity合集
1.出自“高仿京东商城”: package com.itau.jingdong.ui.base; import com.itau.jingdong.AppManager; import com.ita ...
- 浏览器缓存(Web Cache/ Http Cache)
浏览器缓存(Web Cache/ Http Cache)是前端性能优化中很重要的组成部分. 缓存策略 浏览器的缓存策略是: 1.如果本地没有缓存,则发送非条件性请求. 2.如果本地有缓存,则判断本地缓 ...
- Monte Carlo与TD算法
RL 博客:http://blog.sciencenet.cn/home.php?mod=space&uid=3189881&do=blog&view=me&from= ...
- springboot监控
springboot版本 <parent> <groupId>org.springframework.boot</groupId> <artifactId&g ...
- Ubuntu桌面显示超大,现在显示不全
按住alt可以自由拖动窗口或者滚动鼠标滚动轮,整体放大缩小桌面把窗口拖动到显示设置然后调整菜单和标题栏缩放比例
- 词法分析器Lexer
词法分析 In computer science, lexical analysis, lexing or tokenization is the process of converting a se ...
- CALayer的additive属性解析
CALayer的additive属性解析 效果: 源码:https://github.com/RylanJIN/ShareOfCoreAnimation // // CAPartAViewContro ...
- ZT Android的引用计数(强弱指针)技术及一些问题
Android的引用计数(强弱指针)技术及一些问题 分类: Android 2013-06-07 18:25 844人阅读 评论(4) 收藏 举报 目录(?)[+] Android C++框架层的引用 ...