js实现简单购物车的价格,简书效果
效果图
代码来喽
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="./bootstrap-3.4.1-dist/css/bootstrap.min.css">
<style>
th,
td {
text-align: center;
}
span {
margin: 0 8px;
}
</style>
</head>
<body>
<div class="box">
<table class="table table-bordered">
<thead>
<tr>
<th>产品名称</th>
<th>产品单价</th>
<th>产品数量</th>
<th>总价</th>
</tr>
</thead>
<tbody>
<tr>
<td>iphone5</td>
<td>500</td>
<td><button>-</button><span>1</span><button>+</button></td>
<td class="price">500</td>
</tr>
<tr>
<td>iphone6</td>
<td>600</td>
<td><button>-</button><span>1</span><button>+</button></td>
<td class="price">600</td>
</tr>
<tr>
<td>iphone7</td>
<td>700</td>
<td><button>-</button><span>1</span><button>+</button></td>
<td class="price">700</td>
</tr>
</tbody>
<thead>
<tr>
<td colspan="3">total</td>
<td id="all">500</td>
</tr>
</thead>
</table>
</div>
<script>
var all = document.getElementById("all");
var btns = document.getElementsByTagName("button");
var price = document.getElementsByClassName("price");
for (var i = 0; i < btns.length; i++) {
btns[i].onclick = function () {
var danjia = Number(this.parentNode.previousElementSibling.innerHTML);
if (this.innerHTML == "+") {
var span = this.previousElementSibling;
span.innerHTML = Number(span.innerHTML) + 1;
} else {
var span = this.nextElementSibling;
if (span.innerHTML == "1") {
alert("不能再减少喽");
return;
}
span.innerHTML = Number(span.innerHTML) - 1;
}
this.parentNode.nextElementSibling.innerHTML = Number(span.innerHTML) * danjia;
var about = this.parentNode.nextElementSibling;
about.innerHTML = Number(span.innerHTML) * danjia;
var sum = 0;
for (var i = 0; i < price.length; i++) {
sum += Number(price[i].innerHTML);
}
all.innerHTML = sum;
}
}
</script>
</body>
</html>