jquery实现手机端单店铺购物车结算删除功能
发布时间 - 2026-01-10 23:13:34 点击率:次手机端一部分用flex布局写在这里看着不爽把css全部删除了。只留下js结算功能js很臃肿,请留下宝贵意见提升性能。改天上多店铺购物车手机端原版截图

效果图:
图(1)全部勾选的效果
图(2)勾选,点击“删除”效果
代码如下:
<!DOCTYPE html>
<html lang="zh-cn">
<head>
<title>购物车</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="apple-mobile-web-app-capable" content="yes" />
<meta name="apple-mobile-web-app-status-bar-style" content="black" />
<!----确保适当的绘制和触屏缩放,让网页的宽度自动适应手机屏幕的宽度---->
<meta name="viewport" content="user-scalable=no, width=device-width, initial-scale=1.0, maximum-scale=1.0"/>
<!----关键词搜索---->
<meta name="keywords" content="">
<!----描述网页的核心内容,通常为网页内容的摘要信息---->
<meta name="description" content="" />
<meta name="format-detection" content="telephone=no" />
<meta name="format-detection" content="email=no" />
<link rel="stylesheet" href="css/basic.css" rel="external nofollow" >
<link rel="stylesheet" href="css/css.css" rel="external nofollow" >
</head>
<style>
.flex-center{
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -o-box;
display: box;
-webkit-box-pack: center;
-moz-box-pack: center;
-ms-flex-pack: center;
-o-box-pack: center;
box-pack: center;
-webkit-box-align: center;
-moz-box-align: center;
-ms-flex-align: center;
-o-box-align: center;
box-align: center;
}
.kong{
font-size: 0.3rem;
height: 80vh;
color: #333333;
}
.kong a {
color: #333333;
text-decoration: double;
}
</style>
<body>
<main class="dfk_main">
<dl class="gwc_dl">
<dt class="gwc_dt"><label class="gwc_1 gwc_spxz"><input type="checkbox" class="gwc_qx2 GoodsCheck" value=""></label></dt>
<dd class="gwc_dd2">零食
<span>¥<span class="gwc_dd_p">1.00</span></span>
<span class="spjj gwc_jj">
<input type="button" class="jian" value="-"><input type="text" class="shuliang" value="1"><input type="button" class="jia" value="+">
</span></dd>
</dl>
<dl class="gwc_dl">
<dt class="gwc_dt"><label class="gwc_1 gwc_spxz"><input type="checkbox" class="gwc_qx2 GoodsCheck" value=""></label></dt>
<dd class="gwc_dd2">零食
<span>¥<span class="gwc_dd_p">1.00</span></span>
<span class="spjj gwc_jj">
<input type="button" class="jian" value="-"><input type="text" class="shuliang" value="1"><input type="button" class="jia" value="+">
</span></dd>
</dl>
<section class="gwc_delectbtn">
<button type="button" class="delete">删除</button><p>共 <span class="colb51 gwc_sl">0</span> 件商品 共计:¥<span class="ShopTotal">0.00</span></p>
</section>
</main>
<footer class="gwc_footer">
<form action="#" method="get">
<p class="gwc_qx"><label class="gwc_1 gwc_label"><input type="checkbox" class="gwc_qx2 ShopCheck" value=""></label><span>全选</span>
<span class="gwc_jsp"><span >合计:¥<b class="ShopTotal">0.00</b></span><span>不含邮费</span></span>
<button type="button" class="gwc_btnjs">结算(<span class="gwc_sl">0</span>)</button>
</p>
</form>
</footer>
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
<script>
$(function(){
$(".shuliang").keyup(function() {
if (isNaN($(this).val()) || parseInt($(this).val()) < 1 || $(this).val()=="") {
$(this).val("1");
}
});
// 数量加
$(".jia").click(function(){
var t = $(this).parent().find(".shuliang");
t.val(parseInt(t.val())+1);
var n = parseInt($(this).siblings(".shuliang").val()); //得到商品的数量
var p = parseFloat($(this).parent().siblings().children(".gwc_dd_p").text()); //得到商品的单价
var tot = p * n; //计算单个商品的总价
TotalPrice();
});
// 数量减
$(".jian").click(function(){
var t = $(this).parent().find(".shuliang");
if (parseInt(t.val())>1) {
t.val(parseInt(t.val())-1);
}
var n = parseInt($(this).siblings(".shuliang").val()); //得到商品的数量
var p = parseFloat($(this).parent().siblings().children(".gwc_dd_p").text()); //得到商品的单价
var tot = p * n; //计算单个商品的总价
TotalPrice();
});
// 点击商品按钮
$(".GoodsCheck").change(function() {
$(this).parent().toggleClass('gwc_active')
var goods = $(this).parents('.dfk_main').find(".GoodsCheck"); //获取本店铺的所有商品
var goodsC = $(this).parents('.dfk_main').find(".GoodsCheck:checked"); //获取本店铺所有被选中的商品
var Shops = $(".ShopCheck"); //获取本店铺的全选按钮
if (goods.length == goodsC.length) { //如果选中的商品等于所有商品
Shops.prop('checked', true).parent(".gwc_label").addClass("gwc_active"); //店铺全选按钮被选中
TotalPrice();
} else { //如果选中的商品不等于所有商品
Shops.prop('checked', false).parent(".gwc_label").removeClass("gwc_active"); //店铺全选按钮不被选中
// 计算
TotalPrice();
}
});
// 点击店铺
$(".ShopCheck").change(function() {
if ($(this).prop("checked") == true) { //如果全选按钮被选中
$(".gwc_label").addClass("gwc_active");
$(".GoodsCheck").prop('checked', true).parent(".gwc_1").addClass("gwc_active"); //所有按钮都被选中
// 计算
TotalPrice()
} else {
$(".gwc_label").removeClass("gwc_active");
$(".GoodsCheck").prop('checked', false).parent(".gwc_1").removeClass("gwc_active"); //else所有按钮不全选
// 计算
TotalPrice();
}
});
//删除
$('.delete').click(function () {
$(".dfk_main input[type='checkbox']:checked").each(function() { // 遍历选中的checkbox
var goods = $(this).parents('.dfk_main').find(".GoodsCheck"); //获取本店铺的所有商品
var goodsC = $(this).parents('.dfk_main').find(".GoodsCheck:checked"); //获取本店铺所有被选中的商品
var Shops = $(".ShopCheck"); //获取本店铺的全选按钮
if (goods.length == goodsC.length) { //如果选中的商品等于所有商品
$('.dfk_main').html('<a href="#" rel="external nofollow" >购物车为空<br>点击去购买</a>').addClass('flex-center kong');
Shops.prop('checked', false).parent(".gwc_label").removeClass("gwc_active"); //店铺全选按钮不被选中
$('.gwc_sl,.ShopTotal').text(0.00);
TotalPrice();
} else { //如果选中的商品不等于所有商品
var n = $(this).parents('.gwc_dl').index(); // 获取checkbox所在行的顺序
$(".dfk_main").find(".gwc_dl:eq("+n+")").remove();
TotalPrice();
}
});
});
function TotalPrice() {
var oprice = 0; //店铺总价
var sl = 0;//数量
$(".dfk_main .gwc_dl .GoodsCheck").each(function () { //循环店铺里面的商品
if ($(this).is(":checked")) { //如果该商品被选中
var num = parseInt($(this).parents(".gwc_dl").find(".shuliang").val()); //得到商品的数量
// alert(num);
var price = parseFloat($(this).parents(".gwc_dl").find(".gwc_dd_p").text()); //得到商品的单价
var total = price * num; //计算单个商品的总价
oprice += parseFloat(total); //计算该店铺的总价
sl += parseInt(num);
}
$('.gwc_sl').text(sl);
$(".ShopTotal").text(oprice.toFixed(2)); //输出全部总价
});
}
});
// document.documentElement.style.fontSize = document.documentElement.clientWidth / 6.4 + 'px';
</script>
</body>
</html>
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持!
# jquery实现购物车结算
# 购物车结算代码
# jquery购物车
# jquery购物车结算功能实现方法
# jQuery实现移动端手机商城购物车功能
# 购物车前端开发(jQuery和bootstrap3)
# jQuery使用cookie与json简单实现购物车功能
# jQuery基于json与cookie实现购物车的方法
# 使用Python的Django框架结合jQuery实现AJAX购物车页面
# jQuery实现购物车多物品数量的加减+总价计算
# jQuery实现加入购物车飞入动画效果
# 基于JQuery实现的类似购物商城的购物车
# jQuery模拟淘宝购物车功能
# 关键词
# 全选
# 购物车
# 不被
# 不等于
# 勾选
# 看着
# 遍历
# 不含
# 写在
# 只留下
# 该商品
# 为空
# 上多
# 请留下
# stylesheet
# detection
# telephone
# external
# href
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
Laravel控制器是什么_Laravel MVC架构中Controller的作用与实践
Laravel Sail是什么_基于Docker的Laravel本地开发环境Sail入门
打开php文件提示内存不足_怎么调整php内存限制【解决方案】
Laravel怎么生成URL_Laravel路由命名与URL生成函数详解
Laravel如何实现API资源集合?(Resource Collection教程)
Laravel观察者模式如何使用_Laravel Model Observer配置
Python结构化数据采集_字段抽取解析【教程】
nodejs redis 发布订阅机制封装实现方法及实例代码
Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
laravel怎么用DB facade执行原生SQL查询_laravel DB facade原生SQL执行方法
Android滚轮选择时间控件使用详解
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
如何快速生成高效建站系统源代码?
Laravel如何清理系统缓存命令_Laravel清除路由配置及视图缓存的方法【总结】
如何实现建站之星域名转发设置?
laravel怎么在请求结束后执行任务(Terminable Middleware)_laravel Terminable Middleware请求结束任务执行方法
如何在 Pandas 中基于一列条件计算另一列的分组均值
如何在阿里云虚拟服务器快速搭建网站?
Laravel如何使用Spatie Media Library_Laravel图片上传管理与缩略图生成【步骤】
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
lovemo网页版地址 lovemo官网手机登录
Python并发异常传播_错误处理解析【教程】
Python进程池调度策略_任务分发说明【指导】
Laravel怎么清理缓存_Laravel optimize clear命令详解
电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?
Laravel如何为API生成Swagger或OpenAPI文档
Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南
如何在阿里云ECS服务器部署织梦CMS网站?
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
Laravel怎么实现支付功能_Laravel集成支付宝微信支付
如何用VPS主机快速搭建个人网站?
Laravel如何实现图片防盗链功能_Laravel中间件验证Referer来源请求【方案】
Laravel怎么多语言本地化设置_Laravel语言包翻译与Locale动态切换【手册】
Windows10怎样连接蓝牙设备_Windows10蓝牙连接步骤【教程】
Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解
Win11怎么更改系统语言为中文_Windows11安装语言包并设为显示语言
Python企业级消息系统教程_KafkaRabbitMQ高并发应用
详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点
WordPress 子目录安装中正确处理脚本路径的完整指南
如何用花生壳三步快速搭建专属网站?
C++用Dijkstra(迪杰斯特拉)算法求最短路径
Laravel如何使用Sanctum进行API认证?(SPA实战)
网站制作企业,网站的banner和导航栏是指什么?
如何在阿里云完成域名注册与建站?
如何在Ubuntu系统下快速搭建WordPress个人网站?
如何在IIS管理器中快速创建并配置网站?
VIVO手机上del键无效OnKeyListener不响应的原因及解决方法
Laravel如何使用Vite进行前端资源打包?(配置示例)
php读取心率传感器数据怎么弄_php获取max30100的心率值【指南】

