Html购物车

这篇具有很好参考价值的文章主要介绍了Html购物车。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一.登陆界面

二.注册界面

三.购物车界面

一.登陆界面

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>登陆界面</title>
		
		<style type="text/css">
		 
			html,body{
				height:100%;/*高度为屏幕的百分之百*/
				margin: 0px;/*外间距*/
			}
			
			body{/*背景图片*/
				background: url(tupian/1.jpeg) center/cover;
			}
			
			form{/*表单·*/
				color: white;
                /*将背景设置透明*/
				background: rgba(255,255,255,.1);
				position: absolute;
				padding: 0px 20px;
				left: 50%;
				top: 50%;
                /* 在自己的基础上往右边和下面走-50% */
				transform: translate(-50%,-50%);
				border-radius: 10px;
				box-shadow: 6px 6px 10px black;
			}
			
			input{
				border: 1px solid gray;
				border-radius: 20px;
				height: 40px;
				width: 300px;
			}
			
			button{
				width: 80px;
				height: 40px;
				transform: translate(80%,20%);
				border: 1px solid black;
				border-radius: 20px;
				margin: 0px 20px;
			}
			
			input{
				background: rgba(255,255,255,.5);
				
			}
			a{
				text-decoration: none;
			}
			
		</style>
	</head>
	<body>
		<form action="" id="myJM" method="post">
			<h3>白马时光</h3>
            <p>昵称: <input type="text" id="userName" placeholder="输入3-6个大写或小写字母")></p>
            <p>密码: <input type="password" id="userPwd" placeholder="不能为标点或文字(长度在6-10)")></p>
			<p>
				<button type="button" onclick="fun01()" >登陆</button>
				<button type="button" onclick="fun02()" >注册</button>
			</p>
			<p>
				忘记密码?<a>点击这里</a>
			</p>	
		</form>
		
	
	<script>
	    //登陆
	    function fun01() {
			//拿到输入框的值
	       var f1=userName.value;
		   var f2=userPwd.value;
		   //正则
		   var rexName=/^[a-zA-Z]{3,6}$/;
		   var rexPwd=/^\w{6,10}$/;
		   //正则匹配
		   var b1=rexName.test(f1)
		   var b2=rexPwd.test(f2)
	       
		   if(b1&&b2){
			   location.href="11111.html"
		   }else{
			   if(userName.valu==""||userPwd.value==""){
				   alert("信息不能为空")
				   return false;
			   }
			   alert("输入错误")
			   return false;
		   }
			}
	       //注册
		   function fun02(){
			   location.href="zhuce.html"
		   }
	
	
	
	</script>
	</body>
</html>

 我的登陆界面用正则判断,昵称输入框的输入要求时3到6个大写或小写字母,placeholder时信息提示,它在输入框中显示,当你在输入框中输入值时,就会消失

Html购物车

 我写了非空判断,在没有输入值就点击登陆时,就会弹出提示框(alert)

 Html购物车

在输入信息与消息提示不符时,也会 弹出提示框(alert)

Html购物车

二.注册界面

我写的注册界面不怎么全面没有运用二级联动,也没有输入电话号码。有需要的朋友还是去看看别的大佬的d=====( ̄▽ ̄*)b

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title>登陆界面</title>
		
		<style type="text/css">
		 
			html,body{
				height:100%;
				margin: 0px;
			}
			
			body{
				background: url(tupian/2.jpeg) center/cover;
			}
			
			form{
				color: white;
				background: rgba(255,255,255,.1);
				position: absolute;
				padding: 0px 20px;
				left: 50%;
				top: 50%;
				transform: translate(-50%,-50%);
				border-radius: 10px;
				box-shadow: 6px 6px 10px black;
			}
			
			input{
				border: 1px solid gray;
				border-radius: 20px;
				height: 40px;
				width: 300px;
			}
			
			button{
				width: 80px;
				height: 40px;
				transform: translate(80%,20%);
				border: 1px solid black;
				border-radius: 20px;
				margin: 0px 20px;
			}
			
			input{
				background: rgba(255,255,255,.5);
				
			}
			a{
				text-decoration: none;
			}
			
		</style>
	</head>
	<body>
		<form action="" id="myJM" method="post">
			<h3>白马时光</h3>
            <p>昵称: <input type="text" id="userName" placeholder="输入3-6个大写或小写字母")></p>
            <p>密码: <input type="password" id="userPwd" placeholder="不能为标点或文字(长度在6-10)")></p>
			<p>
				<button type="button" onclick="fun01()">提交</button>
				<button type="reset">清除</button>
			</p>
		</form>
		
	
	<script>
	    //登陆
	    function fun01() {
			//拿到输入框的值
	       var f1=userName.value;
		   var f2=userPwd.value;
		   //正则
		   var rexName=/^[a-zA-Z]{3,6}$/;
		   var rexPwd=/^\w{6,10}$/;
		   //正则匹配
		   var b1=rexName.test(f1)
		   var b2=rexPwd.test(f2)
	       
		   if(b1&&b2){
			   alert("注册成功")
		   }else{
			   if(userName.valu==""||userPwd.value==""){
			   				   alert("信息不能为空")
			   				   return false;
			   }
			   alert("格式不规范")
			   return false;
		   }
			}
	
	</script>
	</body>
</html>

 我的注册界面有一个清除按钮,在输入值后可以一键清除

Html购物车

输入值符合要求后点击提交就会提示注册成功 

 Html购物车

三.购物车界面

我的购物车和商城在同一个界面,所以我说这是一个不完善的购物车

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>购物车</title>
		<style type="text/css">
		* {
		    padding: 0px;
		    margin: 0px;
			/* 去除编号 */
		    list-style: none;
		}
		img{
			width: 250px;
			height: 250px;
		}
		
		td{
			font-size: 20px;
			font-weight: 40px;
			width: 200px;
			text-align: center;
		}
		.nav {
		    height: 50px;
		    background: black;
		}
		
		.nav>li {
		    color: white;
		    float: left;
			/* 文字垂直剧中  只要行高和高度一致 */
		    line-height: 50px;
		    padding: 0px 30px;
		    position: relative;
		}
		
		
		li {
		    position: relative;
		    text-align: center;
		}
		
		.nav>li:hover {
		    background: blue;
		}
		
		.nav ul {
		    background: green;
		    width: 100px;
		    position: absolute;
		    left: 0px;
		    opacity: 0;
		    transform: rotate(0deg) scale(.5);
		    transition: .2s;
		}
		
		li li:hover {
		    background: yellow;
		}
		
		.nav>li:hover ul {
		    opacity: 1;
		    transform: rotate(360deg) scale(1);
		}
		
		li::after {
		    content: "";
		    position: absolute;
		    width: 0;
		    height: 5px;
		    background: pink;
		    bottom: 10px;
		    left: 50%;
		    transform: translate(-50%, 0);
		    transition: 1s;
		}
		
		li:hover::after {
		    width: 80%;
			body {
				font-size: 12px;
				line-height: 25px;
			}

			table {
				border-top: solid 1px #666666;
				border-left: solid 1px #666666;
			}

			td {
				text-align: center;
				border-right: solid 1px #666666;
				border-bottom: solid 1px #666666;
			}

			.left {
				text-align: left;
				padding-left: 10px;
			}

			#photo {
				border: solid 1px #0066CC;
				width: 200px;
				text-align: center;
				z-index: 2;
				position: absolute;
				display: none;
				top: 50px;
				left: 50px;
				background-color: #ffffff;
			}

			#big {

				width: 200px;
			}

			h1 {
				/* transform: translate(45%); */
				text-align: center;
			}

			table {
				margin: 0 auto;
				width: 100%;
				border: 2px solid #aaa;
				border-collapse: collapse;
			}

			table th,
			table td {
				border: 2px solid #aaa;
				padding: 5px;
			}

			th {
				background-color: #eee;
			}
			.id{
				font-size: 10px;
			}
		</style>
	</head>
	<body>

         <ul class="nav">
             <li>个人中心 </li>
             <li>首页</li>
         </ul> 
      
		<table style="width: 100%;" cellspacing="0" cellpadding="0" >
			<tr>
				<td>商品图片</td>
				<td>商品名称</td>
				<td >商品价格</td>
				<td>操作</td>
		 </tr>
		 <tr>
		 	<td>
		 		<img src="img/1.png"/>
		 	</td>
		 	<td class="left">飞鸟集</td>
		 	<td class="sum">26.00元</td>
		 	<td align="center">
		 		<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
		 	</td>
		 </tr>
			<tr>
		 	<td >
				<img src="img/2.png"/>
				</td>
				<td class="left">月亮与六便士</td>
				<td class="sum">26.80元</td>
				<td>
					<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
				</td>
			</tr>
			<tr>
				<td>
					<img src="img/3.png"/>
				</td>
				<td class="left">小王子</td>
				<td class="sum">32.80元</td>
				<td align="center">
					<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
				</td>
			</tr>
			<tr>
				<td>
					<img src="img/4.png"/>
				</td>
				<td class="left">新月集</td>
				<td class="sum">44.00元</td>
				<td align="center">
					<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
				</td>
			</tr>
		 <tr>
		 	<td>
		 		<img src="img/5.png"/>
		 	</td>
		 	<td class="left">茶馆/我这一辈子</td>
		 	<td class="sum">67.40元</td>
		 	<td align="center">
		 		<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
		 	</td>
		 </tr>
			<tr>
				<td>
					<img src="img/6.png"/>
				</td>
				<td class="left">呼啸山庄</td>
				<td class="sum">38.00元</td>
				<td align="center">
					<input type="button" value="加入购物车" onclick="add_shoppingcart(this)" />
				</td>
			</tr>
		</table>
		<div id="photo" onmouseout="hidden()" onmousemove="shows()"></div>

		<h1>购物车</h1>
		<table  id="a">
			<thead>
				<tr>
					<th>商品</th>
					<th>单价(元)</th>
					<th>数量</th>
					<th>金额(元)</th>
					<th>删除</th>
				</tr>
			</thead>
			<tbody id="goods">
			</tbody>
			<tfoot>
				<tr>
					<td colspan="3" align="right">总计</td>
					<td id="total"></td>
					<td><button onclick="tk(this)">购买</button></td>
				</tr>
			</tfoot>
			
		</table>
		

		<script>
			//第一个表格
			function show(image, event) {
				var x;
				var y;
				document.getElementById("photo").style.display = "block";
				x = parseInt(event.clientX) + parseInt(document.documentElement.scrollLeft);
				y = parseInt(event.clientY) + parseInt(document.documentElement.scrollTop);
				document.getElementById("photo").style.top = y + "px";
				document.getElementById("photo").style.left = x + "px";
				document.getElementById("big").src = "images/" + image;

			}

			function shows() {
				document.getElementById("photo").style.display = "block";
			}

			function hidden() {
				document.getElementById("photo").style.display = "none";
			}
			window.onscroll = "show()";

			//------------------------------------------------------------------------------------------------				
			var map = new Map(); //创建一个集合

			function add_shoppingcart(btn) { //btn就是上面传下来的this
				//console.log(btn);
				var ntr = document.createElement("tr");
				//获取到商品的价格和名称
				var tr = btn.parentNode.parentNode; //获取到按钮的父亲 
				var tds = tr.children;
				//获取商品的名称
				var name = tds[0].innerHTML;
				//获取商品的价格
				var price = tds[2].innerHTML;
				console.log("name:" + name + ",price:" + price);

				//判断集合中是否又加入商品.如果有不能加入,只能加数量,没有可加入
				if (map.has(name)) {
					//如果有不能加入,只能加数量
					var tr1 = map.get(name);
					//console.log(tr1);
					//var btn1=tr1.getElementById("btn1");       
					var btn1 = tr1.getElementsByTagName("button")[1];
					//console.log(btn1);
					jia(btn1);
				} else {
					//如果没有该商品,可以正常添加
					ntr.innerHTML =
						`
						<td style="text-align:center;">${name}</td>
						 <td style="text-align:center;">${price}</td>
						<td style="text-align:center;">
						<button onclick="jian(this)">-</button>
						<input type="text" value="1" size="1" />
						<button id="btn1" onclick="jia(this)">+</button>
						</td>
						<td>${price}</td>
						<td style="text-align:center;"><button onclick="del(this)">X</buttton></td>`;

					//将name和一行数据存入到集合中
					map.set(name, ntr);
					//找到tbody的对象
					var tbody = document.getElementById("goods");
					//把上面创建好的一行五列加入到tbody中
					tbody.appendChild(ntr);
					sum();
				}
			}

			function del(btn) {
				var tr = btn.parentNode.parentNode;
				tr.remove(); //删除的是DOM文档中的内容,并没有把集合中的内容删除.
				var tr = btn.parentNode.parentNode; //获取到按钮的父亲
				var tds = tr.children;
				//获取商品的名称
				var name = tds[1].innerHTML;
				map.delete(name); //删除的是集合中的内容
				sum();
			}

			function jian(btn) {
				var inpt = btn.nextElementSibling;
				var amount = inpt.value;
				if (amount <= 1) {
					return;
				} else {
					inpt.value = --amount;
					var trs = btn.parentNode.parentNode;
					console.log(trs);
					var price = parseInt(trs.children[1].innerHTML);
					trs.children[3].innerHTML = price * amount;
					sum();
				}
			}

			function jia(btn) { //形式参数
				//获取+号按钮左边input控件的对象
				var inpt = btn.previousElementSibling;
				//console.log(Inpt);
				var amount = inpt.value;
				//console.log(amount);
				inpt.value = ++amount; //把累加后的数放进去
				var td = btn.parentNode.previousElementSibling;
				//console.log(td);
				var price = parseInt(td.innerHTML); //取到单价的值
				//console.log(price);
				var rtd = btn.parentNode.nextElementSibling;
				rtd.innerHTML = price * amount;
				sum();
			}

			//求所有商品的累加和
			function sum() {
				//获取到tbody的对象
				var tbody = document.getElementById("goods");
				var trs = tbody.children; //得到tbody的孩子
				var total = 0; //用于求累加和
				for (i = 0; i < trs.length; i++) { //取到每一个商品的价格
					var price = trs[i].children[3].innerHTML;
					total = total + parseInt(price);
				}
				var t = document.getElementById("total");
				//然后把total的值放入到t对象中
				t.innerHTML = total;
			}
			
			function tk(btn){
         
		 
			}
			</script>
	</body>
</html>

看到图片上黑色的一行工具栏了吗,在代码中写了呦 

Html购物车

在点击加入购物车后 ,商品的信息会在购物车显示,点击两次数量会加一,在购物车数量点加减数量会变化

Html购物车文章来源地址https://www.toymoban.com/news/detail-478459.html

到了这里,关于Html购物车的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • HTML+CSS+JavaScript实现网络购物车

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

    2024年02月05日
    浏览(48)
  • HTML购物车示例(勾选、删除、添加和结算功能)

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

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

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

    2024年02月14日
    浏览(49)
  • Vue项目商品购物车前端本地缓存逻辑(适用H5/ipad/PC端)——前端实现购物车删除商品、购物车增减数量,清空购物车功能

    Vue3 + Vite + Ts开源后台管理系统模板 基于ElementUi或AntdUI再次封装基础组件文档 基于Element-plus再次封装基础组件文档(vue3+ts)

    2024年02月12日
    浏览(51)
  • Android商城开发----点击加入购物车,购物车商品的增删减

    上一章节:【分类页面】点击左侧类别,实现右侧对应类别商品的展示 本文是在上一章节基础上开发的,点击【分类】页面商品的加入购物车按钮,实现将商品加入购物车的功能。 本文主要实现的功能是: 1.点击加入购物车按钮,将商品加入购物车。 2.点击相同的商品加入

    2024年02月03日
    浏览(62)
  • JavaWeb购物系统(五)购物车模块的实现

    未添加商品效果图 添加商品之后的效果图 添加商品 购物车中商品的数量增加、减少、通过键盘输入改变数量 清空购物车 计算购物车商品的总价格 我们的购物车采用的是在服务端,即:使用session来存储。这样做的 缺点 :无法永久存储,当服务端关闭的时候,会销毁。 优点

    2024年02月07日
    浏览(48)
  • JavaWeb购物系统(六)购物车订单模块的实现

    有订单时的效果图 无订单时的效果图 订单详情页 生成订单 订单页的展示 查看订单详情 和购物车同样的,首先得知道我们的订单对应的哪个实体对象。一个用户可能有多条订单记录,一个订单里边可以包含多个 商品(也可以理解为多个购物项) 。理清这个逻辑之后,我们

    2024年02月05日
    浏览(56)
  • JavaWeb 购物车项目

    今天是基于我们所学的服务器存储端和三层架构来完善该项目,今天先完善一部分的功能。   1.登录 先创建一个用户表,表中有id,name,pwd三个属性首。 需要具备一个登录页面,一个处理登录数据的页面,在该页面进行判断,当该用户存在,我们跳转到商城,用户不存在回到登

    2024年02月07日
    浏览(45)
  • JavaWeb购物车项目

    目录 项目前提 数据库的创建 用户表 商品表 eclipse进行创建包和类: 主要实现功能 1、购物车用户登录 2、商品显示 3、购物车添加商品总数和价格的计算 1、购物车并不是一直放数据库 2、选择使用的技术: session:(购物车项目使用session) 好处:快(放在内存当中),存对象的

    2024年02月05日
    浏览(50)
  • Vue项目(购物车)

    目录 购物车效果展示: 购物车代码: 购物车效果展示: 此项目添加、修改、删除数据的地方都写了浏览器都会把它存储起来 下次运行项目时会把浏览器数据拿出来并在页面展示 Video_20230816145047 购物车代码: 复制完代码,需改下script中引入的vue文件地址; 可直接使用

    2024年02月12日
    浏览(42)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包