利用 jQuery 操作页面元素的方法,实现电商网站购物车页面商品数量的增加和减少操作,要求单项价格和总价随着数量的改变而改变

news/2024/5/9 16:43:12/文章来源:https://ymjin.blog.csdn.net/article/details/109642025

查看本章节

查看作业目录


需求说明:

  • 利用 jQuery 操作页面元素的方法,实现电商网站购物车页面商品数量的增加和减少操作,要求单项价格和总价随着数量的改变而改变
  • 当用户单击“+”按钮时,文本框中的商品数量增加 1,单项价格和总价相应地增加
  • 点击“-”按钮,文本框中的数量减 1(不能小于 1),单项价格和总价相应地减少

实现思路:

  1. 声明 calPrice() 函数,根据商品的单价和数量计算单项价格,当点击改变数量的按钮时,调用 calPrice() 函数,及时刷新单项价格
  2. 声明 calTotalPrice() 函数,计算所有商品的总价格。当点击改变数量的按钮时,调用 calTotalPrice() 函数,及时刷新所有商品的应付总额
  3. 在页面加载完毕事件中,给“+”按钮的点击事件绑定方法,实现在原基础上数量增加 1 的功能,并调用calPrice() 和 calTotalPrice() 方法实现价格和数量的联动
  4. 在页面加载完毕事件中,给“-”按钮的点击事件绑定方法,实现在原基础上数量减少 1 的功能,并调用calPrice() 和 calTotalPrice() 方法实现价格和数量的联动

实现代码:

<!DOCTYPE html>
<html><head><meta charset="UTF-8"><title></title><style type="text/css">table{border: 1px solid #dedede;border-collapse: collapse;width: 100%;}table tr{height: 50px;border-bottom: 1px dashed #DEDEDE;}table td,th{text-align: center;vertical-align: middle;}table td.item{width: 400px;height: 60px;text-align: left;}table td.item img{margin-right: 10px;vertical-align: middle;}table tr td.cal{text-align: right;}table tr td.cal span{font: bold 25px geneva,verdana,sans-serif;color: orange;}table .btn{border: 1px solid #dedede;background-color: white;width: 16px;height: 16px;}table .txt{width: 60px;height: 30px;border: 1px solid #dedede;text-align: center;font: bold 15px/30px geneva,verdana,sans-serif;}table .txt:hover{border: 1px solid red;}</style><script src="js/jquery-3.3.1.js" type="text/javascript" charset="utf-8"></script><script type="text/javascript">$(function(){//在增加数量的按钮上绑定单击事件$(".btnAdd").click(function(){var txtObj = $(this).siblings("input[type='text']");//获取输入框console.log(txtObj);var number = parseInt(txtObj.val());txtObj.val(number+1);//计算单个商品价格calPrice($(this),number+1);//计算商品总价calTotalPrice();});//在减少的数量的按钮上绑定单击事件$(".btnMinus").click(function(){var txtObj = $(this).siblings("input[type='text']");//获取输入框var number = parseInt(txtObj.val());if(number>1){txtObj.val(number-1);//计算单个商品价格calPrice($(this),number-1);//计算商品总价calTotalPrice();};})//参数$btnObj代表增减数量的按钮,number是商品的数量function calPrice($btnObj,number){var $tdObj = $btnObj.parent().next(); //获取显示商品单价的td单元格var price = parseFloat($tdObj.text().substr(1));//从¥截取,获取单价var $tdTotal = $tdObj.next();//获取紧邻的同胞元素,即显示商品小计的单元格var total = price*number;//计算单个商品价格$($tdTotal).html("&yen;"+total.toFixed(2));//商品小计保留小数点后两位}//计算商品列表中所有商品的总价function calTotalPrice(){//保存总价var sum = 0;//遍历表格中title=‘price’属性的单元格$("td[title='price']").each(function(index,element){sum += parseFloat($(this).text().substr(1));//价格累加});//显示总价$("#spanTotal").html("&yen;"+sum.toFixed(2));}});</script></head><body><table id="tabOrder"><th>项目</th><th>状态</th><th>类型、数量</th><th>单价</th><th>小计</th><tr><td class="item"><a href="#"><img src="img/img_1.jpg" align="left" width="100px"/>欢乐空间量版式KTV:欢唱套餐2选1,国家法定节假日需到店另付20元,可升级</a></td><td>可购买</td><td><input type="button" value="-" class="btnMinus"/><input type="text" class="text" value="1" disabled="disabled"/><input type="button"  value="+" class="btnAdd"/></td><td>&yen;39.9</td><td title="price">&yen;39.9</td></tr><tr><td class="item"><a href="#"><img src="img/img_2.jpg" align="left" width="100px"/>途乐时尚主题量版式KTV,任选1小时欢唱可升级,提供免费WiFi</a></td><td>可购买</td><td><input type="button" value="-" class="btnMinus"/><input type="text" class="text" value="1" disabled="disabled"/><input type="button"  value="+" class="btnAdd"/></td><td>&yen;59.9</td><td title="price">&yen;59.9</td></tr><tr ><td colspan="5" class="cal">已选<span>2</span>件商品 应付金额:<span id="spanTotal">&yen;99.8</span></td></tr></table></body>
</html>

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_768628.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

利用自定义动画 animate() 方法,实现某图书网站中“近 7 日畅销榜”中的图书无缝垂直向上滚动特效:当光标移入到图书上时,停止滚动,鼠标移开时,继续滚动

查看本章节 查看作业目录 需求说明&#xff1a; 利用自定义动画 animate() 方法&#xff0c;实现某图书网站中“近 7 日畅销榜”中的图书无缝垂直向上滚动特效:当光标移入到图书上时&#xff0c;停止滚动&#xff0c;鼠标移开时&#xff0c;继续滚动 实现思路&#xff1a; 在…

快看!❤️又一超实用浏览器插件!常用网站自动整合,JSON格式化,CSDN全站去广告!多种工具一键调用。开发者的福音!

其实这个插件才出来的时候博主也下载了使用过&#xff0c;并没有什么亮点&#xff0c;那时候甚至觉得有点多余&#xff0c;因为CSDN全站去广告啥的&#xff0c;早就安装了油猴脚本&#xff0c;广告&#xff1f;不存在的嘿嘿。。 就在前几天看见CSDN的活动在推荐这款插件&#x…

outlook搜索栏跑到上面去了_学习网站seo优化技巧,先了解搜索引擎搜索原理-行业动态...

泰州网站建设好之后&#xff0c;首先就要对网站进行SEO优化。那搜索引擎优化的主要任务之一&#xff0c;就是确定网站的搜索引擎友好性&#xff0c;因而&#xff0c;网站优化的每个环节都与搜索引擎存在必定的联络&#xff0c;研讨搜索引擎优化实际上是对搜索引擎作业进程的逆向…

报错:清除网站内搜索框中的历史记录?

问题&#xff1a;我在搜索框内点击一下后&#xff0c;就会出现一些搜索记录&#xff0c;可有些关键词我并没有在该网站搜索过&#xff0c;而是与这个网站无关的一些关键词。而且不同的网站上似乎关键词有重叠。如下图所示&#xff0c;请问应该怎么清除这些历史记录呢&#xff1…

简单网页设计作品代码_10个国外网站精选作品颠覆你对网页排版设计的认知

网站首页排版设计可以作为一个网站基础风格设计定调的页面之一。网站内页的各种版式、样式的演变都需要遵循首页的基本格调&#xff0c;包含布局的比例、配色、图标的风格、字体的样式及规范、页头页尾的公用组件等等。也许因为有了这些规范规定&#xff0c;很多新入行设计师以…

vs2010里面 新建网站里面的 asp.net网站 和 新建项目里面的 asp.net Web应用程序 的区别 (下)...

二&#xff1a;下面是 通过 新建项目 来创建 ASP.NET web 应用程序 下面我们创建 数据库DAL层 和 实体类层 Model 他会自动生成 DAL 文件夹 我们继续 Model 层。方法同上&#xff0c;就不上图了。 然后我们来添加一个 工具类库 。这个工具类库&#xff0c;不是现在创建的&am…

快速获取一个网站的所有资源,图片,html,css,js......扒站,仿站必备工具

今天介绍一款软件,可以快速获取一个网站的所有资源,图片,html,css,js...... 以获取某车官网为例 我来展示一下这个软件的功能. 输入网站地址和网站要保存的文件夹 如果网站名称后我们可以扫描一下网站, 以便我们更好的筛选资源,剔除不要的链接,添加爬取得链接 在这里也可以设…

做网站注意事项,网站建设标准流程

背景介绍: 现如今是互联网的时代&#xff0c;任何东西都可以借助互联网迅速传播到世界各地&#xff0c;另外网站也是个人&#xff0c;企业的名片&#xff0c;可以帮助公司扩展客户&#xff0c;树立企业形象从而达到招揽客户&#xff0c;创造利润的目的。网上也有很多发布信息的…

php网站升级包,CmsEasy 5.0to5.1 升级包

CmsEasy 5.0to5.1 升级包作者&#xff1a;jackie 发布时间&#xff1a;2012-07-15 05:53:48 浏览 :版本&#xff1a;V 5.1大小&#xff1a;2.38 MB编码&#xff1a;UTF-8更新日期&#xff1a;2012-07-08 00:00:001.升级概述&#xff1a;从CmsEasy5.0升级到CmsEasy5.12.升级…

vue 项目从 report.html 分析网站性能优化

这个页面是webpack的打包分析报告&#xff0c;我们根据这个页面&#xff0c;可看到那些包占比大&#xff0c;那些包占比小&#xff0c;那个组件大. vue-cli的打包策略是将node_module中的包打包成一个chukk-vendors.js 其他的js 如assets中的打包成app.js 优化策略是 找到其中…

js移除掉当前页面的所有外链 优化SEO 去掉页面特定域名的链接

目前有个文章详情页面, 文章内容来处是后台管理的一个富文本编辑器, 现在有个问题就是,将其他页面的内容,复制到富文本编辑器中,这样有可能有些外链,这些外链无疑会降价网站的seo权重. 所以需要一个办法,将外链找出来,并进行处理,移除或者添加一个前缀,以防seo权重,或流量流…

分享26个优秀的国外广告设计公司网站作品案例

为了能表现自己团队的设计水平&#xff0c;广告公司的网站都设计得非常创意&#xff0c;他们试图通过优秀的网站设计来吸引更多的客户。这篇文章收集的这26个独具创意的国外广告公司网站设计相信能给你带来视觉冲击&#xff0c;一起欣赏。 您可能还喜欢 55个五彩缤纷的网页设计…

如何快速获取一个网站的所有资源 如何快速获取一个网站的所有图片 如何快速获取一个网站的所有css

今天介绍一款软件,可以快速获取一个网站的所有资源,图片,html,css,js...... 以获取某车官网为例 我来展示一下这个软件的功能. 输入网站地址和网站要保存的文件夹 如果网站名称后我们可以扫描一下网站, 以便我们更好的筛选资源,剔除不要的链接,添加爬取得链接 在这里也可以设…

Check Host:实时监控网站或者服务器是否可以访问

如果你拥有一个网站&#xff0c;那么最重要的事情就是要保证它24小时都能够访问。不过国内的虚拟主机服务非常糟糕&#xff0c;经常会出现各种状况&#xff0c;所以我们需要一个软件&#xff0c;可以让我们第一时间知道网站出现了无法访问的情况&#xff0c;从而通知售后人员解…

Windows云服务器上部署ASP.NET网站详解(新手适用)

操作系统&#xff1a;Windows Server 2012 R2 标准版 64位简体中文版 数据库&#xff1a;SQL Server 2008 R2 SP2 - Express Edition IDE&#xff1a;Visual Studio 2017 新手请尽量保证自己服务器的操作系统、数据库版本和上述一致&#xff01; 远程登录服务器并向桌面上添…

Docker部署nginx并使用https+二级域名访问静态网站

1. 安装docker&#xff08;略&#xff09; 2. 拉取nginx docker pull nginx3. 进入nginx&#xff0c;将相关文件和目录拷贝到宿主机上&#xff08;这里为腾讯云centos7.8&#xff09;关键路径如下&#xff1a; # nginx的主配置文件 /etc/nginx/nginx.conf # 虚拟主机的配置文…

快速下载一个网站

有时候我们需要分析一个网站&#xff0c;或者基于一个网站进行魔改&#xff0c;这个就需要一些特殊的手段将网站源码下载到本地了&#xff0c;其实目前大部分网站都是有代码压缩的&#xff0c;很难去有修改。 这里我就教大家如何快速获取一个网站的所有资源&#xff0c;包括源码…

android wap网站自动适应

做个整理。 研究了一下新浪的wap网站&#xff0c;发现原来我们的head存在着这样的差异……<%page contentType"text/html;charsetUTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "DTD/xhtml1-strict.dtd"><h…

使用 Tampermonkey 编写高级跨网站自动化任务脚本

文章目录Tampermonkey 介绍官方介绍作用快速安装有关平台TM 的 API 解读&#xff0c;及简单脚本的编写基础 API 的解读基础脚本编写&#xff0c;以修改 CSDN 样式、表单自动填写为例高级 API 应用程序接口高级脚本的编写分析 技术方案 以 M2C 为例总结Tampermonkey 介绍 官方介…

Windows Azure -Azure 网站、云服务和虚拟机的对比

Azure 网站、云服务和虚拟机对比 概述 Azure提供了几种方法来承载网站&#xff1a; Azure网站、云服务和虚拟机。本文帮助您了解选项和为您的Web应用程序做出正确选择。 Azure网站是大多数web应用程序的最佳选择。部署和管理都整合到平台&#xff0c;网站可以迅速扩展以处理高流…