Blogger Information
Blog 10
fans 0
comment 2
visits 7810
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
4月2号 五期线上班
阿坚的博客
Original
634 people have browsed it

购物车

实例

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script type="text/javascript" src="http://libs.baidu.com/jquery/1.9.0/jquery.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;}
    .notice+input{width:60px;margin-left: 6px;text-align: center;}
    .select{border: 2px solid #ff0000;
            width: 88px;height: 24px;
            color: #ff0000;
            line-height: 24px;

    }
    </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" >
    </p>

    <p style="margin-top:30px;margin-left:95px;">
      <button class="bu1" id='sub'>加入购物车</button>
    </p>
  </div>

  <script>
  	$(function(){
  		$('span').click(function(){
         if($(this).hasClass('select')){//匹配span中是否带有class为select
           $(this).removeClass('select');//含有就清除
         }else{
           $(this).addClass('select').siblings('span').removeClass('select');
         }//没有就添加上select的class名,同时匹配同级span,清除同级其他span中的选中样式
  		})
  	})
  	$('#sub').click(function(){
  		var form={};
  		var flag=true;
       $('.item').each(function(){//each() 方法规定为每个匹配元素规定运行的函数
           if($(this).children('span.select').length !=1){
             flag=false;
           }else{//form={键:值}
            var key=$(this).attr('name')//获取当前p标签的 name属性值 不同的p属性名不一样
            var value=$(this).children('span.select').html()
            form[key]=value;//键值对一一对应
           }
           // console.log(form);
      })
       if($('.item1 input').val()<=0){
           flag=false;
       }else{
          form['num']=$('.item1 input').val()
          // console.log(form)
       }
       if (flag) {
        alert('加入购物车!')
       }
  	})
  </script>
</body>
</html>

运行实例 »

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

总结

  • 先写html,在写css

  • 在head引入jquery

  • 用jq选择器选择到节点,用 if 点击判断 如果有select  那么就removeclass select;如果没有那么就addclass

  • 最后下面写判断是否勾选

Correction status:Uncorrected

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post