JS实现购物车功能

<!DOCTYPE html>
<html>
<head lang="en">
    <meta charset="UTF-8">
    <title>操作当当购物车页面</title>
    <link type="text/css" rel="stylesheet" href="css/cartStyle.css" />
</head>
<body>
<div class="content">
    <div class="logo">
        <img src="images/dd_logo.jpg"><span οnclick="close_plan();">关闭</span>
    </div>
    <div class="cartList" id="cartList">
        <ul>
            <li>商品图片</li>
            <li>商品信息</li>
            <li>单价</li>
            <li>数量</li>
            <li>总价</li>
            <li>操作</li>
        </ul>
        <ul>
            <li><img src="images/dog.jpg"></li>
            <li>我和狗狗活下来了</li>
            <li>¥<input type="text" name="price" value="21.90"></li>
            <li><input type="button" name="minus" value="-" οnclick="minus(0);"><input type="text" name="amount" value="1" id="one"><input type="button" name="plus" value="+" οnclick="plus(0);"></li>
            <li id="price0">21.90</li>
            <li><p  οnclick="collection();">移入收藏</p><p id="del0" οnclick="del(0)">删除</p></li>
        </ul>
        <ul>
            <li><img src="images/mai.jpg"></li>
            <li>灰霾来了怎么办</li>
            <li>¥<input type="text" name="price" value="24.00"></li>
            <li><input type="button" name="minus" value="-" οnclick="minus(1);"><input type="text" name="amount" value="1" id="two"><input type="button" name="plus" value="+" οnclick="plus(1);"></li>
            <li id="price1">24.00</li>
            <li><p  οnclick="collection();">移入收藏</p><p id="del1" οnclick="del(1)">删除</p></li>
        </ul>
        <ol>
            <li id="totalPrice">商品总计:<span id="total"></span></li>
            <li><span>结 算</span></li>
        </ol>
    </div>
</div>
</body>
<script>
	var one=document.getElementById("one");
	var two=document.getElementById("two");
	var price0=document.getElementById("price0");
	var price1=document.getElementById("price1");
	var total=document.getElementById("total");
	var del0=document.getElementById("del0");
	var del1=document.getElementById("del1");
//	左减
	function minus(num){
		switch(num){
			case 0:
				var value=one.value;
				if(0<one.value){
					value--;
					one.value=value;
				}
				price0.innerText=12.90*parseInt(value);//单件商品总价
				total.innerText=parseInt(price0.innerText)+parseInt(price1.innerText);//多件商品总价
				break;
			case 1:
				var value=two.value;
				if(0<two.value){
					value--;
					two.value=value;
				}
				price1.innerText=24.00*parseInt(value);//单件商品总价
				total.innerText=parseInt(price0.innerText)+parseInt(price1.innerText);//多件商品总价
				break;
		}
	}
//	右加
	function plus(num){
		switch(num){
			case 0:
				var value=one.value;
				if(one.value>=0){
					value++;
					 one.value=value;
				}
				price0.innerText=12.90*parseInt(value);//单件商品总价
				total.innerText=parseInt(price0.innerText)+parseInt(price1.innerText);//多件商品总价
				break;
			case 1:
				var value=two.value;
				if(two.value>=0){
					value++;
					 two.value=value;
				}
				price1.innerText=24.00*parseInt(value);//单件商品总价
				total.innerText=parseInt(price0.innerText)+parseInt(price1.innerText);//多件商品总价
				break;
		}
	}//删除
	function del(num){
		switch(num){
			case 0:
				(del0.parentNode).parentNode.remove();
				break;
			case 1:
				(del1.parentNode).parentNode.innerText="";
				break;
		}
	}
</script>
</html>

  • 5
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,以下是一个简单的用 JavaScript 实现购物功能的示例代码: HTML: ```html <div id="item-list"> <h3>商品列表</h3> <ul> <li data-id="1" data-name="商品1" data-price="10">商品1 - 10元</li> <li data-id="2" data-name="商品2" data-price="20">商品2 - 20元</li> <li data-id="3" data-name="商品3" data-price="30">商品3 - 30元</li> </ul> </div> <div id="cart"> <h3>购物</h3> <ul id="cart-items"></ul> <p id="total-price">总价:0元</p> </div> ``` JavaScript: ```javascript // 获取商品列表和购物元素 const itemList = document.getElementById('item-list'); const cart = document.getElementById('cart'); const cartItems = document.getElementById('cart-items'); const totalPrice = document.getElementById('total-price'); // 初始化购物数据 let cartData = []; // 监听商品列表的点击事件 itemList.addEventListener('click', e => { // 获取点击的商品元素 const item = e.target.closest('li'); if (!item) return; // 获取商品的 id、名称和价格 const id = item.dataset.id; const name = item.dataset.name; const price = +item.dataset.price; // 查找购物中是否已经存在该商品 const cartItem = cartData.find(item => item.id === id); if (cartItem) { // 如果购物中已经存在该商品,则增加数量 cartItem.quantity++; cartItem.price += price; cartItems.querySelector(`li[data-id="${id}"]`).textContent = `${name} x ${cartItem.quantity} - ${cartItem.price}元`; } else { // 如果购物中不存在该商品,则添加到购物 const newCartItem = { id, name, price, quantity: 1, }; cartData.push(newCartItem); const newCartItemElement = document.createElement('li'); newCartItemElement.dataset.id = id; newCartItemElement.textContent = `${name} x 1 - ${price}元`; cartItems.appendChild(newCartItemElement); } // 更新总价 const cartTotalPrice = cartData.reduce((total, item) => total + item.price, 0); totalPrice.textContent = `总价:${cartTotalPrice}元`; }); ``` 以上代码实现了一个简单的购物功能,用户可以点击商品列表中的商品添加到购物中,购物中显示添加的商品名称、数量和价格,总价也会实时更新。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值