利用web前端编写一段网吧管理系统商品购物车的代码
时间: 2023-09-13 20:05:31 浏览: 129
基于WEB的购物车代码
### 回答1:
好的,以下是一个简单的网吧管理系统的商品购物车的前端代码:
HTML部分:
```html
<!DOCTYPE html>
<html>
<head>
<title>网吧管理系统 - 商品购物车</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="style.css">
</head>
<body>
<header>
<h1>网吧管理系统 - 商品购物车</h1>
</header>
<main>
<section class="cart">
<h2>购物车</h2>
<table>
<thead>
<tr>
<th>商品名称</th>
<th>单价</th>
<th>数量</th>
<th>小计</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<!-- 购物车内容会在 JS 中动态生成 -->
</tbody>
<tfoot>
<tr>
<td colspan="3"></td>
<td><span class="total-price">0</span>元</td>
<td>
<button id="clear-btn">清空购物车</button>
<button id="checkout-btn">结算</button>
</td>
</tr>
</tfoot>
</table>
</section>
<section class="goods">
<h2>商品列表</h2>
<ul>
<li>
<h3>饮料</h3>
<ul>
<li data-name="可口可乐" data-price="3">可口可乐</li>
<li data-name="雪碧" data-price="3">雪碧</li>
<li data-name="红牛" data-price="5">红牛</li>
</ul>
</li>
<li>
<h3>零食</h3>
<ul>
<li data-name="薯片" data-price="2">薯片</li>
<li data-name="糖果" data-price="1">糖果</li>
<li data-name="巧克力" data-price="3">巧克力</li>
</ul>
</li>
</ul>
</section>
</main>
<script src="script.js"></script>
</body>
</html>
```
CSS部分:
```css
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
}
header {
background-color: #333;
color: #fff;
padding: 20px;
}
h1 {
margin: 0;
}
main {
display: flex;
flex-wrap: wrap;
padding: 20px;
}
section {
margin: 20px;
min-width: 300px;
}
.cart table {
border-collapse: collapse;
width: 100%;
}
.cart th,
.cart td {
border: 1px solid #ddd;
padding: 8px;
text-align: center;
}
.cart th {
background-color: #eee;
}
.cart td:last-child {
text-align: left;
}
.cart .total-price {
font-weight: bold;
}
.goods ul {
list-style: none;
padding: 0;
}
.goods h3 {
margin: 0;
}
.goods li {
border: 1px solid #ddd;
padding: 8px;
cursor: pointer;
}
.goods li:hover {
background-color: #eee;
}
```
JavaScript部分:
```javascript
const cart = [];
function renderCart() {
const cartTable = document.querySelector('.cart tbody');
cartTable.innerHTML = '';
let totalPrice = 0;
for (const item of cart) {
const tr = document.createElement('tr');
const nameTd = document.createElement('td');
nameTd.textContent = item.name;
tr.appendChild(nameTd);
const priceTd = document.createElement('td');
priceTd.textContent = item.price;
tr.appendChild(priceTd);
const quantityTd = document.createElement('td');
quantityTd.textContent = item.quantity;
tr.appendChild(quantityTd);
const subtotalTd = document.createElement('td');
const subtotal = item.price * item.quantity;
subtotalTd.textContent = subtotal;
tr.appendChild(subtotalTd);
const removeTd = document.createElement('td');
const removeBtn = document.createElement('button');
removeBtn.textContent = '删除';
removeBtn.addEventListener('click', () => {
const index = cart.indexOf(item);
cart.splice(index, 1);
renderCart();
});
removeTd.appendChild(removeBtn);
tr.appendChild(removeTd);
cartTable.appendChild(tr);
totalPrice += subtotal;
}
document.querySelector('.cart .total-price').textContent = totalPrice;
}
document.querySelectorAll('.goods li').forEach((li) => {
li.addEventListener('click', () => {
const name = li.dataset.name;
const price = parseInt(li.dataset.price);
const item = cart.find((item) => item.name === name);
if (item) {
item.quantity++;
} else {
cart.push({ name, price, quantity: 1 });
}
renderCart();
});
});
document.querySelector('#clear-btn').addEventListener('click', () => {
cart.length = 0;
renderCart();
});
document.querySelector('#checkout-btn').addEventListener('click', () => {
alert('结算成功!');
});
```
这段代码实现了一个简单的商品购物车功能,包括:
- 商品列表的显示和点击事件处理;
- 购物车的显示和清空操作;
- 添加商品到购物车、删除购物车中的商品、计算总价;
- 结算按钮的点击事件处理。
你可以在商品列表中添加更多商品,也可以根据实际需求修改样式和交互细节。
### 回答2:
网吧管理系统商品购物车代码示例:
```javascript
<!DOCTYPE html>
<html>
<head>
<title>网吧管理系统商品购物车</title>
<style>
.item {
margin-bottom: 10px;
}
.item img {
width: 50px;
height: 50px;
margin-right: 10px;
vertical-align: middle;
}
.item span {
vertical-align: middle;
}
.total {
margin-bottom: 20px;
font-weight: bold;
}
</style>
</head>
<body>
<h2>网吧管理系统商品购物车</h2>
<div id="cartList">
<!-- 商品列表会动态添加到这个div -->
</div>
<div class="total">
总价: <span id="totalPrice">0</span>
</div>
<script>
// 购物车数据
var cart = [];
// 商品列表数据
var items = [
{
name: '商品1',
price: 10,
imgUrl: 'img1.jpg'
},
{
name: '商品2',
price: 20,
imgUrl: 'img2.jpg'
},
{
name: '商品3',
price: 30,
imgUrl: 'img3.jpg'
}
];
// 渲染商品列表
function renderItems() {
var cartList = document.getElementById('cartList');
cartList.innerHTML = '';
for (var i = 0; i < items.length; i++) {
var item = items[i];
var div = document.createElement('div');
div.className = 'item';
var img = document.createElement('img');
img.src = item.imgUrl;
var span = document.createElement('span');
span.innerText = item.name + ' - ¥' + item.price;
var button = document.createElement('button');
button.innerText = '加入购物车';
button.addEventListener('click', function () {
addToCart(item);
});
div.appendChild(img);
div.appendChild(span);
div.appendChild(button);
cartList.appendChild(div);
}
}
// 添加商品到购物车
function addToCart(item) {
cart.push(item);
updateTotalPrice();
}
// 更新购物车总价
function updateTotalPrice() {
var totalPrice = 0;
for (var i = 0; i < cart.length; i++) {
totalPrice += cart[i].price;
}
var total = document.getElementById('totalPrice');
total.innerText = totalPrice;
}
renderItems();
</script>
</body>
</html>
```
以上代码是一个简单的网吧管理系统商品购物车的例子。代码中定义了一个包含商品信息的数组`items`,使用`renderItems()`方法将商品列表动态渲染到页面。在每个商品后面添加了一个"加入购物车"按钮,点击按钮将相应的商品信息添加到购物车数组`cart`中,并调用`updateTotalPrice()`方法更新购物车总价。最后,购物车的总价会被显示在页面上。
### 回答3:
Web前端编写网吧管理系统商品购物车的代码可以参考下面的示例代码:
HTML部分:
```html
<div id="shopping-cart">
<h2>购物车</h2>
<ul id="cart-items"></ul>
<button onclick="checkout()">结账</button>
</div>
<div id="product-list">
<h2>商品列表</h2>
<ul>
<li>
<span>商品1</span>
<button onclick="addToCart('商品1')">加入购物车</button>
</li>
<li>
<span>商品2</span>
<button onclick="addToCart('商品2')">加入购物车</button>
</li>
<li>
<span>商品3</span>
<button onclick="addToCart('商品3')">加入购物车</button>
</li>
</ul>
</div>
```
JavaScript部分:
```javascript
const cartItemsElement = document.getElementById('cart-items');
// 购物车数据
let cartItems = [];
// 添加商品到购物车
function addToCart(productName) {
cartItems.push(productName);
updateCart(); // 更新购物车显示
}
// 更新购物车显示
function updateCart() {
cartItemsElement.innerHTML = ''; // 清空购物车
cartItems.forEach(item => {
const li = document.createElement('li');
li.innerText = item;
cartItemsElement.appendChild(li);
});
}
// 结账
function checkout() {
alert(`您的购物车中有 ${cartItems.length} 件商品。`);
}
```
以上代码实现了一个简单的网吧管理系统商品购物车功能。通过点击“加入购物车”按钮,可以将商品添加到购物车列表中,并实时更新购物车显示。在点击“结账”按钮时,会弹出一个提示框显示购物车中的商品数量。
阅读全文