HTML购物车示例(勾选、删除、添加和结算功能)

这篇具有很好参考价值的文章主要介绍了HTML购物车示例(勾选、删除、添加和结算功能)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

以下是一个简单的HTML购物车示例,包含勾选、删除、添加和结算功能。结算功能使用PHP实现,可以获取选中商品的ID。

HTML购物车示例(勾选、删除、添加和结算功能)

以下是一个简单的HTML购物车示例,包含勾选、删除、添加和结算功能。结算功能使用PHP实现,可以获取选中商品的ID`以下是一个简单的HTML购物车示例,包含勾选、删除、添加和结算功能。结算功能使用PHP实现,可以获取选中商品的ID。文章来源地址https://www.toymoban.com/news/detail-444909.html

<!DOCTYPE html>
<html>
<head>
      <link rel="stylesheet" href="css/style.css" />
	<title>购物车</title>
	<style>
		table {
			border-collapse: collapse;
			width: 100%;
		}

		th, td {
			text-align: left;
			padding: 8px;
			border-bottom: 1px solid #ddd;
		}

		tr:hover {
			background-color: #f5f5f5;
		}

		.check {
			width: 20px;
		}

		.delete {
			color: red;
			cursor: pointer;
		}

		.total {
			font-weight: bold;
			text-align: right;
		}

		#checkout {
			margin-top: 20px;
			text-align: right;
		}
	</style>
</head>
<body>
	<h1>购物车</h1>
	<table>
		<thead>
			<tr>
				<th class="check"></th>
				<th>商品名称</th>
				<th>价格</th>
				<th>数量</th>
				<th>小计</th>
				<th class="delete"></th>
			</tr>
		</thead>
		<tbody>
			<tr class="item-row" data-id="1">
				<td class="check"><input type="checkbox" name="item[]" value="1"></td>
				<td>商品1</td>
				<td>10.00</td>
				<td><input type="number" name="quantity[]" value="1"></td>
				<td class="subtotal">10.00</td>
				<td class="delete">X</td>
			</tr>
			<tr class="item-row" data-id="2">
				<td class="check"><input type="checkbox" name="item[]" value="2"></td>
				<td>商品2</td>
				<td>20.00</td>
				<td><input type="number" name="quantity[]" value="1"></td>
				<td class="subtotal">20.00</td>
				<td class="delete">X</td>
			</tr>
			<tr class="item-row" data-id="3">
				<td class="check"><input type="checkbox" name="item[]" value="3"></td>
				<td>商品3</td>
				<td>30.00</td>
				<td><input type="number" name="quantity[]" value="1"></td>
				<td class="subtotal">30.00</td>
				<td class="delete">X</td>
			</tr>
		</tbody>
		<tfoot>
			<tr>
				<td colspan="4" class="total">总计:</td>
				<td class="total" id="total">0.00</td>
				<td></td>
			</tr>
		</tfoot>
	</table>
	<div id="checkout">
		<button onclick="checkout()">结算</button>
	</div>

	<script>
		// 计算小计和总计
		function updateSubtotal() {
			var rows = document.querySelectorAll('.item-row');
			var total = 0;
			for (var i = 0; i < rows.length; i++) {
				var row = rows[i];
				var price = parseFloat(row.querySelector('td:nth-child(3)').textContent);
				var quantity = parseInt(row.querySelector('input[name="quantity[]"]').value);
				var subtotal = price * quantity;
				row.querySelector('.subtotal').textContent = subtotal.toFixed(2);
				total += subtotal;
			}
			document.querySelector('#total').textContent = total.toFixed(2);
		}

		// 删除商品
		function deleteItem() {
			var row = this.parentNode;
			row.parentNode.removeChild(row);
			updateSubtotal();
		}

		// 添加商品
		function addItem() {
			var table = document.querySelector('table');
			var row = table.insertRow(-1);
			row.classList.add('item-row');
			row.dataset.id = Date.now(); // 生成一个随机ID
			row.innerHTML = `
				<td class="check"><input type="checkbox" name="item[]" value="${row.dataset.id}"></td>
				<td><input type="text" name="name[]"></td>
				<td><input type="number" name="price[]" step="0.01"></td>
				<td><input type="number" name="quantity[]" value="1"></td>
				<td class="subtotal">0.00</td>
				<td class="delete">X</td>
			`;
			row.querySelector('.delete').addEventListener('click', deleteItem);
			row.querySelector('input[name="quantity[]"]').addEventListener('input', updateSubtotal);
			row.querySelector('input[name="price[]"]').addEventListener('input', updateSubtotal);
		}

		// 结算选中的商品
		function checkout() {
			var items = document.querySelectorAll('input[name="item[]"]:checked');
			var ids = [];
			for (var i = 0; i < items.length; i++) {
				ids.push(items[i].value);
			}
			if (ids.length > 0) {
				window.location.href = 'checkout.php?ids=' + ids.join(',');
			} else {
				alert('请选择要结算的商品');
			}
		}

		// 绑定事件
		var deleteButtons = document.querySelectorAll('.delete');
		for (var i = 0; i < deleteButtons.length; i++) {
			deleteButtons[i].addEventListener('click', deleteItem);
		}
		var addBtn = document.querySelector('#add');
		addBtn.addEventListener('click', addItem);
		var quantityInputs = document.querySelectorAll('input[name="quantity[]"]');
		for (var i = 0; i < quantityInputs.length; i++) {
			quantityInputs[i].addEventListener('input', updateSubtotal);
		}
		var priceInputs = document.querySelectorAll('input[name="price[]"]');
		for (var i = 0; i < priceInputs.length; i++) {
			priceInputs[i].addEventListener('input', updateSubtotal);
		}
	</script>
</body>
</html>
`

到了这里,关于HTML购物车示例(勾选、删除、添加和结算功能)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Html购物车

    目录 一.登陆界面 二.注册界面 三.购物车界面  我的登陆界面用正则判断,昵称输入框的输入要求时3到6个大写或小写字母, placeholder时信息提示 ,它在输入框中显示,当你在输入框中输入值时,就会消失  我写了非空判断,在没有输入值就点击登陆时,就会弹出提示框(

    2024年02月08日
    浏览(37)
  • JavaWeb(10)——前端综合案例4(购物车示例)

           购物车需要展示一个已加入购物车的商品列表,包含商品名称、商品单价、购买数量和操作 等信息,还需要实时显示购买的总价。其中购买数量可以增加或减少,每类商品还可以从购物车中移除。最终实现的效果大致如图所示。 基础版 plus版              先在

    2024年02月05日
    浏览(31)
  • HTML淘宝购物车页面的实现

    一、实验目的和要求 本实验任务用HTML基本标签制作一个简单的淘宝购物车页面,具体要求如下: 以纯文本格式保存为*.html文件 使用表格标签、div标签、span标签、图像标签等实现效果设计 启用浏览器,打开该文件或在地址栏中直接输入存放该文件的地址 二、 实验原理 首先

    2024年02月11日
    浏览(33)
  • javascript+css+html购物车案例

    javascript代码部分主要实现三部分功能  1、商品数量增加(减少)同时小计增加(减少) 这部分主要是通过for循环给增加(减少)按钮绑定点击事件 1)点击后计数器自增(自减) 2)计数器数量*对应商品单价 赋值给对应商品小计(涉及到数据类型转换) parseInt(\\\'12ccc\\\' ) →

    2024年02月02日
    浏览(55)
  • Vue第三篇:最简单的vue购物车示例

    本文参考:Vue Cli(脚手架)实现购物车小案例 - - php中文网博客  效果图:   编写流程: 1、首先通过@vue/cli创建工程 vue create totalprice 2、改写App.vue代码如下: 3、代码中相关内容说明: (1)caption为table的标题 (2)在组件中使用v-for时,必须添加:key属性,否则会报错,为了

    2024年02月17日
    浏览(27)
  • HTML+CSS+JavaScript实现网络购物车

    1 页面布局 购物车由一个table标签和一个div标签构成。案例在Chrome浏览器运行效果,如图所示。 table标签共有5行6列,第1行是表头,第2-5行的每一行都代表一个商品,依次用td标签存放商品的勾选框、商品缩略图及名称、商品单价、商品增减操作按钮以及小计、删除按钮等。

    2024年02月05日
    浏览(35)
  • flask 与小程序 购物车删除和编辑库存功能

    编辑  :   数量加减   价格汇总  数据清空 知识点1: view class=\\\"jian-btn\\\" catchtap=\\\"jianBtnTap\\\" data-index=\\\"{{index}}\\\" 是一个微信小程序中的一个视图组件,具有以下特点: class=\\\"jian-btn\\\" :该组件的样式类名为 jian-btn ,可以通过CSS样式表对其进行样式设置。 catchtap=\\\"jianBtnTap\\\" :该组件绑

    2024年01月22日
    浏览(28)
  • HTML+CSS+JavaScript:渲染电商站购物车页面

     根据下图渲染购物车页面 以下是缺失JS部分的代码,感兴趣的小伙伴可以先自己试着写一写

    2024年02月14日
    浏览(32)
  • HTML+JS+CSS移动端购物车选购界面

    UIGoods 类: 构造函数: 创建 UIGoods 实例时,传入商品数据 g ,初始化商品的数据和选择数量。 getTotalPrice() 方法: 计算商品的总价,考虑了选择数量。 isChoose() 方法: 判断是否选中该商品。 increase() 方法: 增加商品的选择数量。 decrease() 方法: 减少商品的选择数量,但数量

    2024年02月02日
    浏览(50)
  • php开发实战分析(2):cookie的动态使用(设置、获取、删除、猜你喜欢原理、购物车调用)

    在 PHP 中,cookie 是一种用于在客户端(浏览器)和服务器之间存储数据的一种机制。 它们通常用于跟踪和识别用户,并存储用户的偏好设置。下面是一些常见的用法和函数来操作 cookie。 可以使用 setcookie() 函数来设置 cookie。该函数有多个参数,其中最重要的是名称和值。下

    2024年02月15日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包