购物车
时间:2021-08-12
本文章向大家介绍购物车,主要包括购物车使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
引入了jQuery
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script src="./jq.js"></script>
<style>
table,
th,
td {
border: 1px solid black;
}
table {
border-collapse: collapse;
margin-top: 30px;
margin-bottom: 30px;
width: 600px;
text-align: center;
}
td,th{
width: 120px;
}
button {
border: 0;
}
</style>
</head>
<body>
<table>
<tr>
<th><button class="all">全选</button></th>
<th>商品名称</th>
<th>单价</th>
<th>数量</th>
<th>小计</th>
<th>操作</th>
</tr>
<tr>
<td><input type="checkbox" name="" class="getGoods"> </td>
<td>电脑</td>
<td class="price">200</td>
<td>
<button class="jian">-</button>
<span>1</span>
<button class="add">+</button>
</td>
<td class="total">200</td>
<td>删除</td>
</tr>
<tr>
<td><input type="checkbox" name="" class="getGoods"> </td>
<td>手机</td>
<td class="price">100</td>
<td>
<button class="jian">-</button>
<span>1</span>
<button class="add">+</button>
</td>
<td class="total">100</td>
<td>删除</td>
</tr>
</table>
<div>
<span>总计:</span>
<span class="sum">0</span>
</div>
<script>
// 逻辑:
// 加载页面时,调用getSum 总价
getSum();
// 1.加减(小计)
// 加法
$(".add").click(function(){
// 1.1 算出数量变化
let num = parseInt($(this).prev().text());
num++;
$(this).prev().text(num);
// 1.2 算出 小计价格
let price = parseInt($(this).parent().prev().text());
$(this).parent().next().text(price*num);
// 调用 总价
getSum();
})
// 减法
$(".jian").click(function(){
// 1.1 算出数量变化
let num = parseInt($(this).next().text());
num--;
if(num<1) num=1;
$(this).next().text(num);
// 1.2 算出 小计价格
let price = parseInt($(this).parent().prev().text());
$(this).parent().next().text(price*num);
// 调用 总价
getSum();
})
// 2. 总价 = 小计之和(选中条件下)
function getSum(){
let sum = 0;
for(let i=0;i<$('.total').length;i++){
// 添加 选中判断的条件
if($('.total').eq(i).parent().find('input').prop('checked')){
sum += parseInt($('.total').eq(i).text())
}
}
$('.sum').text(sum);
}
// 3. 选中
// 选中:有三种表现形式
// 1> 用户点击 出现 √
// 2> 添加属性 checked
// 3> js操作 attr() / prop('checked',true)
// 3.1 全选
$('.all').click(function(){
$('.getGoods').prop('checked',true);
// 调用 总价
getSum();
});
// 3.2 用户选中
$('.getGoods').click(function(){
// 其实已经选中了
// 调用 总价
getSum();
});
</script>
</body>
</html>
原文地址:https://www.cnblogs.com/gracexin/p/15131903.html
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法