侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

使用Ajax、json实现京东购物车结算界面的数据交互实例

前端  /  管理员 发布于 5年前   540


<div class="goodsList_menu">   <div class="goodsList">    <div class="goodsListfl">     <input class="fl" style="margin:15px 10px 0 10px;" type="checkbox" name="" />     <ul>      <li>全选</li>      <li>商品</li>     </ul>    </div>    <div class="goodsListfr fr">     <ul>      <li>单价</li>      <li class="w100">数量</li>      <li class="w100">小计</li>      <li>操作</li>     </ul>    </div>   </div>   <!--内容-->   <div class='goodsListbox'></div>   <div class="checkout">    <div class="checkoutleft">     <input class="fl" style="margin:21px 10px 0 10px;" type="checkbox" name="" />     <ul>      <li>全选</li>      <li>删除选中产品</li>     </ul>    </div>    <div class="checkoutright fr">     <span>总价:<b>¥</b></span><span class="checkoutSum">0</span>     <input type="button" value="去结算" />    </div>   </div>  </div>

body,html,ul,li,a{ margin:0;padding:0;font-family:"microsoft yahei";list-style:none;text-decoration:none;}.fl{ float:left;}.fr{ float:right;}.f12{ font-size:12px;}.disl{ display:inline-block;}.w100{ width:100px;}.fw{ font-weight:bold;}.goodsList_menu{ width:990px;height:45px;background:#f3f3f3;margin:0 auto;line-height:45px; font-size:14px;color:#333;border:1px solid #ddd;}.goodsList_menu .goodsListfl ul li{ float:left;margin-right:80px;cursor:pointer;}.goodsList_menu .goodsListfr ul li{ float:left;margin-right:37px;text-align:center;cursor:pointer;}/*内容*/.goodsList_content{ width:100%;height:80px;border-bottom:1px solid #eee;padding:20px 0;margin-top:40px;}.goodsList_content .disl{ line-height:20px;width:300px;cursor:pointer;margin-left:10px;}.goodsList_content .disl span:hover{ color:#e4393c;}.goodsList_content .disl p:hover{ color:#e4393c;}.goodsListnum .listNum{ widows:45px;height:21px;width:50px;border:1px solid #eee;text-align:center; outline:none;}.goodsListnum ul li{ float:left;margin-right:30px;text-align:center;cursor:pointer;}.goodsListnum ul li a{ border:1px solid #ddd;padding:2px 7px;color:#000;}.goodsListnum ul li p{ line-height:0;color:#666;font-size:12px;margin-top:-2px;}.buy_goods p{ background:url(../images/arrow.png)no-repeat;padding-left:30px;background-position:-20px -20px;}.buy_goods{ position:relative;}/*底部结账*/.checkout{ height:55px;border:1px solid #eee;margin-top:20px;line-height:55px;}.checkout .checkoutleft ul li{ float:left;margin-right:10px;cursor:pointer;}.checkout .checkoutSum{ font-weight:bold;font-size:18px;color:#e64346;}.checkout .checkoutright input{ border:none;color:#fff;outline:none;width:100px;height:55px;line-height:55px; font-size:20px;background:#e64346;margin-left:50px;cursor:pointer;}

<script>   $.ajax({    type:"get",    url:"jd.json",    dataType:"json",    success:function(data){     var list = data.list;//拿到list数组     //console.log(list);     for(var i=0;i<list.length;i++){      var numArray = list[i];      numArray.price = (numArray.price).toFixed(2);      var text = "<div class='goodsList_content'><div class='fl buy_goods'>"+         "<input class='fl' style='margin:15px 10px 0 10px;' type='checkbox' name='' />"+         "<img align='top' src='//article/images/1.jpg' /><div class='disl'>"+         "<span>"+numArray.description+"</span><p class='f12'>购买礼品服务</p></div>"+         "<div class='disl' style='width:auto;position:absolute;right:-100px;top:0;'>"+         "<span>"+numArray.color+"</span></div></div>"+         "<div class='fr goodsListnum' style='margin-top:-12px;'>"+         "<ul><li><b>¥</b><span class='fw'>"+numArray.price+"</span></li>"+         "<li class='w100'><a class='minus' onClick='minus(this);' href=''>-</a>"+         "<input value='1' class='listNum' /><a class='add' onClick='add(this)' href=''>+</a><p>有货</p></li>"+         "<li class='w100'><b>¥</b><span id='sub' class='fw'>"+numArray.price*numArray.quentity+"</span></li>"+         "<li><a style='border:none;color:#666;' href=''>删除</a></li>"+         "</ul></div></div>"      $(text).appendTo(".goodsListbox");     }    },    error:function(){     console.log("调用数据失败!");    }   });   var listNum,price,sums,sub1,sub2;   function add(obj){    listNum = $(obj).prev().val();//input值    listNum = parseInt(listNum);    var num = parseInt(listNum+1);//input值每次+1    $(obj).prev().val(num);    price = $(obj).parent().prev().children('span').text();//找到单价    price = parseInt(price);//转换成number类型    price = price.toFixed(2);    sums = $(obj).parent().next().children('span').text()//找到总金额    sums = parseInt(sums);    console.log(typeof sums);    $(obj).parent().next().children('span').text(price*num);    sub1 = $(".goodsList_content:eq(0)").find("#sub").text();    sub2 = $(".goodsList_content:eq(1)").find("#sub").text();    sub1 = parseInt(sub1);    sub2 = parseInt(sub2);    var res = $(".checkoutright .checkoutSum").text((sub1+sub2).toFixed(2));   }      function minus(obj){    listNum = $(obj).next().val();    listNum = parseInt(listNum);    if(listNum<=1){     listNum==1;    }else{     --listNum;    }    $(obj).next().val(listNum);    price = $(obj).parent().prev().children('span').text();//找到单价    price = parseInt(price);//转换成number类型    price = price.toFixed(2);    sums = $(obj).parent().next().children('span').text()//找到总金额    sums = parseInt(sums);    $(obj).parent().next().children('span').text(price*listNum);    $(".checkoutright .checkoutSum").text(price*listNum);    sub1 = $(".goodsList_content:eq(0)").find("#sub").text();    sub2 = $(".goodsList_content:eq(1)").find("#sub").text();    sub1 = parseInt(sub1);    sub2 = parseInt(sub2);    $(".checkoutright .checkoutSum").text(sub1+sub2);   }  </script>

因为时间原因,代码没有进行优化,但是效果还是先给大家呈现出来。希望可以帮到更多的技术爱好者和朋友!如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!


  • 上一条:
    Python插入Elasticsearch操作方法解析
    下一条:
    使用perl清理电脑上重复文件实现代码(续)
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 使用 Alpine.js 排序插件对元素进行排序(0个评论)
    • 在js中使用jszip + file-saver实现批量下载OSS文件功能示例(0个评论)
    • 在vue中实现父页面按钮显示子组件中的el-dialog效果(0个评论)
    • 使用mock-server实现模拟接口对接流程步骤(0个评论)
    • vue项目打包程序实现把项目打包成一个exe可执行程序(0个评论)
    • 近期文章
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf文件功能(0个评论)
    • Laravel从Accel获得5700万美元A轮融资(0个评论)
    • 在go + gin中gorm实现指定搜索/区间搜索分页列表功能接口实例(0个评论)
    • 在go语言中实现IP/CIDR的ip和netmask互转及IP段形式互转及ip是否存在IP/CIDR(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-10
    • 2017-11
    • 2018-03
    • 2018-04
    • 2018-05
    • 2018-06
    • 2018-09
    • 2018-11
    • 2018-12
    • 2019-02
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2021-04
    • 2021-05
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2022-08
    • 2022-09
    • 2022-10
    • 2022-11
    • 2022-12
    • 2023-01
    • 2023-02
    • 2023-03
    • 2023-04
    • 2023-05
    • 2023-06
    • 2023-07
    • 2023-09
    • 2023-10
    • 2023-11
    • 2023-12
    • 2024-01
    • 2024-02
    • 2024-03
    • 2024-04
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客