js全选按钮和取消全选按钮,购物车表单
时间: 2024-01-21 15:47:53 浏览: 69
js全选、反选、取消选择
如何实现?
对于实现购物车表单的全选按钮和取消全选按钮,以下是应该考虑的步骤:
1. 在购物车表单前面增加一个全选复选框,用于选择或取消所有复选框。
2. 针对每个商品的复选框,增加一个点击事件,当点击复选框时,根据复选框的选中状态更新购物车总价。
3. 在全选复选框的点击事件中,对所有商品的复选框进行选中或取消选中操作,并重新计算购物车总价。
下面是可能的实现代码:
HTML代码:
```html
<!-- 全选/取消全选按钮 -->
<input type="checkbox" id="select-all">全选/取消全选
<br>
<!-- 商品列表 -->
<table>
<tr>
<th>商品名称</th>
<th>价格</th>
<th>选择</th>
</tr>
<tr>
<td>商品1</td>
<td>10元</td>
<td><input type="checkbox" class="item-checkbox" value="10"></td>
</tr>
<tr>
<td>商品2</td>
<td>20元</td>
<td><input type="checkbox" class="item-checkbox" value="20"></td>
</tr>
<tr>
<td>商品3</td>
<td>30元</td>
<td><input type="checkbox" class="item-checkbox" value="30"></td>
</tr>
</table>
<!-- 购物车总价 -->
总价:<span id="total-price">0元</span>
```
JavaScript代码:
```javascript
// 获取全选/取消全选按钮和商品复选框
let selectAllCheckbox = document.getElementById("select-all");
let itemCheckboxes = document.querySelectorAll(".item-checkbox");
// 为全选/取消全选按钮添加点击事件
selectAllCheckbox.addEventListener("click", function() {
// 更新商品复选框状态
itemCheckboxes.forEach(function(item) {
item.checked = selectAllCheckbox.checked;
});
// 计算购物车总价
let totalPrice = 0;
itemCheckboxes.forEach(function(item) {
if (item.checked) {
totalPrice += Number(item.value);
}
});
document.getElementById("total-price").innerHTML = totalPrice + "元";
});
// 为商品复选框添加点击事件
itemCheckboxes.forEach(function(item) {
item.addEventListener("click", function() {
// 计算购物车总价
let totalPrice = 0;
itemCheckboxes.forEach(function(item) {
if (item.checked) {
totalPrice += Number(item.value);
}
});
document.getElementById("total-price").innerHTML = totalPrice + "元";
// 更新全选/取消全选按钮状态
selectAllCheckbox.checked = (itemCheckboxes.length == document.querySelectorAll(".item-checkbox:checked").length);
});
});
```
希望这个回答能够帮到您!
阅读全文