博主信息
博文 12
粉丝 0
评论 4
访问量 11358
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
jquery案例第二篇——购物车
温度的博客
原创
792人浏览过

实例

<!DOCTYPE html>
<html>
<head>
  <title>模拟加入购物车效果</title>
   <script src="https://code.jquery.com/jquery-3.3.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;}
    .notice+input{width:60px;margin-left: 6px;text-align: center;}
    .on{border: 2px solid #C40000;width: 88px;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(){
      $('.item span').click(function(){  //当点击每个span的时候
          if($(this).hasClass('on')){   //先检测一下是否选中,是否含有on
            $(this).removeClass('on');  //如果有了我就移除on
          }else{
             $(this).addClass('on').siblings('span').removeClass('on');  // 如果没有on,我就添加上,同事删除同级span的on
          }
      })
      $('#sub').click(function(){
        var form = {};   //定义空的form对象,用于储存数据
        var flag = true;  //初始化能不能加入购物车状态
        $('.item').each(function(){   //遍历每个item分类
          if($(this).children('span.on').length ==0){   //获取每个item下面的span为on的,长度等于0,说明一个都没选中
            flag = false;
          }else{
            var key = $(this).attr('name');  //键名key,是获取item的name属性的值
            var value = $(this).children('span.on').html();  //键值value,是item下有on效果的span的文本
            form[key] = value;   //储存在form对象里,
            
          }
        })
        if($('.item1 input').val() <=0){   //获取数量的值,如果小于等于0,返回假
          flag = false;
        }else{
          form['num'] = $('.item1 input').val();  //大于0就储存到form对象里
         
        }
        if(flag){
          alert("购物车添加成功!");  //flag==true,成功时候提示
        }

      })

  })
    
</script>

</body>
</html>

运行实例 »

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


批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学