博客列表 >jQuery点击商品选中效果-2019.01.25

jQuery点击商品选中效果-2019.01.25

大宝的博客
大宝的博客原创
2019年01月25日 16:17:43771浏览

jQuery点击商品选中效果

实例

<!DOCTYPE HTML>
<html>
<head>
<title>jQuery点击商品选中效果</title>
<meta charset="utf-8"/>
<script src="https://code.jquery.com/jquery-3.1.1.min.js"></script>
<style type="text/css">
* {margin: 0px auto;padding: 0px;}
.top {width: 402px;height: 35px;line-height: 35px;text-align:center;margin-top: 50px;background: #C40000;color:#fff;}
.main {width: 400px;height: 400px;border: 1px solid #C40000;}
p {width: 400px;height: 26px;margin-top:10px;}
b {width: 90px;height: 26px;line-height: 26px;text-align: center;font-size: 12px;color:#838383;border: 1px solid #ccc;   
   float: left;margin-left: 5px;}
span {width: 90px;height: 26px;line-height: 26px;text-align: center;font-size: 12px;color:#838383;border: 1px solid #ccc;
	 display: block;float: left;margin-left: 5px;}
span:hover {cursor: pointer;}
button {width: 120px;height: 35px;background: #C40000;color: white;border: 0px;}
button:hover {cursor: pointer;}
.notice{border:0px;}
.select {width: 88px;height: 24px;
	line-height: 24px;
	border : 2px solid #ff0000;
	color: red;
}
</style>
</head>
<body>
	<div class="top">请选择信息后加入购物车</div>
	<div class="main">
		<p class="item" name="version">
			<b class="notice">版本</b>
			<span>ONE A2001</span>
			<span>ONE A0001</span>
			<span>ONE A1001</span>
		</p>
		<p class="item" name="color">
			<b class="notice">机身颜色</b>
			<span>白色</span>
			<span>黑色</span>
			<span>金色</span>
		</p>
		<p class="item" name="type">
			<b class="notice">套餐类型</b>
			<span>标配</span>
			<span>套餐一</span>
			<span>套餐二</span>
		</p>
		<p class="item" name="ram">
			<b class="notice">运行内存</b>
			<span>2GB</span>
			<span>3GB</span>
			<span>4GB</span>
		</p>
		<p class="item" name="rom">
			<b class="notice">机身内存</b>
			<span>16GB</span>
			<span>32GB</span>
			<span>64GB</span>
		</p>
		<p class="item" name="location">
			<b class="notice">产地</b>
			<span>中国大陆</span>
			<span>港澳台</span>
		</p>
		<p class="item" name="price">
			<b class="notice">价格</b>
			<span>999元抢购</span>
		</p>
		<p class="item1" name="num">
			<b class="notice">数量</b>
			<input type="number" value="1" style="width:40px;height:26px;">
		</p>

		<p style="margin-top:30px;margin-left:95px;">
			<button class="bu1" id='sub'>加入购物车</button>
		</p>
	</div>
	<script type="text/javascript">
    $(function(){
        $('span').click(function(){
            // 匹配span中是否带有class为select
            if($(this).hasClass('select')){
                $(this).removeClass('select');
            }else{
                //没有就添加上select的class名,同时匹配同级span,清除同级其他span中的选中样式
                $(this).addClass('select').siblings('span').removeClass('select');
            }
        });
         // 判断是否每个选项都选中; 没选中则弹窗警告; 选中了则添加至需要发送的表单数据里面
         $('#sub').click(function(){
           let form = {};//创建一个对象, 用来存选中的数据的
           let flag = true;//能不能加入购物车
           $('.item').each(function(){
                if($(this).children('span.select').length!=1){
                    flag=false;
                }else{
                    let key=$(this).attr('name');//获取当前p标签的 name属性值 不同的p属性名不一样
                    let val=$(this).children('span.select').html();//获得被选中的商品类型
                    form[key]=val;//将键值对一一对应
                }
           })
           //判断数量最少为1
           // val()设置或返回表单字段的值
           if($('.item1 input').val()<=0){
            	alert('数量最少为1');
            	flag=false;
            }else{
            	//将用户输入商品件数放进form中
            	form['num']=$('.item1 input').val();
            }
            if(flag) {
            	alert('可以加入购物车了');
            } 
       })
    });
    </script>
</body>
</html>

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议