无法弄清楚如何在“ jQuery”中的购物车中添加“总价”部分

克谢克

iv'e用jquery制作了一个购物车(不是一个真正的,只是为了练习。我知道这是不安全的),并且我将产品制成可拖动的,这使您可以选择将其从目录中拖动到购物车中。我的问题是,我想添加一个总计部分,该总计部分将为我提供拖到购物车中的每种产品的总价。iv'e尝试了以下代码,但是没有用。感谢您的时间。

<section id="productCatalog">
    <div class="product" >
        <h2 class="des">Product 1 </h2>
        <p class="description"> price: </p>
        <p class="price" id="pro1">400</p>
    </div>
    <div class="product">
        <h2 class="des">Product 2 </h2>
        <p class="description"> price: </p>
        <p class="price" id="pro2">200</p>
    </div>
    <div class="product">
        <h2 class="des">Product 3 </h2>
        <p class="description"> price: </p>
        <p class="price" id="pro3">900</p>
    </div>
    <div class="product">
        <h2 class="des">Product 4 </h2>
        <p class="description"> price: </p>
        <p class="price" id="pro4">152.30</p>
    </div>
   </section>
   <section id="shoppingCart">
    <h2 align="center">shopping cart</h2>
    total:
    <span id="cartSum">0</span>
   </section>

<script>
    $(function(){


        $('.product').draggable({ 
            scroll: false, 
            containment: 'document' , 
            revert: true,
            start: function()
            {
                contents = $(this).text();
            }
         });    


           var price = parseInt($(".selected").text()); 
          var cartSum = $("#cartSum").text();



          $('#shoppingCart').droppable({ hoverClass: 'border', accept: '.product', drop: function()
          {

             $('#shoppingCart').append("<div  class='selected'>" + contents + "</div>" + "<button id='butt' onclick='one(this)'>delete item</button>" ) ;
             cartSum = price;
             function updateCartTotal(){
            $("#cartSum").text(cartSum); 

        }
          }}); 

          window.one = function(obj){

        var item = $(obj).prev().andSelf().remove(); 


    }

    });
</script>

我也包括jsfiddle- http://jsfiddle.net/kshayk/QbNtX/

凯西·福克

我将在此处编写两个单独的函数-一个用于汇总价格,另一个用于显示该总和。在下面,我假设您的#shoppingCart中的每个价格都有一个包装。这通常是个好习惯,因为它可以避免不必要的处理,并使代码更整洁:

function getTotalCost() {
  var totalPrice = 0;
  $("#shoppingCart").find(".price").each(function() {
    totalPrice += parseFloat($(this).html());
  });
  return totalPrice;
}

function updateCartTotal() {
  $("#cartSum").html( getTotalCost() );
}

然后,只需更新#cartSum“购物车”的更新时间即可;我建议使用jQuery的draggable的“ stop”事件,该事件在拖动停止时触发:

$('.product').draggable({ 
  stop: updateCartTotal       
});    

而且由于您的情况也有一个“删除”按钮,因此如果删除了任何内容,则应该更新购物车:

var buttonHTML = "... <button id='butt' onclick='one(this); updateCartTotal();'>delete item</button>" 
$('#shoppingCart').append(buttonHTML) ;

但是,从您的代码中删除了许多旧的杂物后,我发现它更干净只是为了更新“可放下”事件中的#shoppingCart总和(尽管这两个事件都可以)。更改的核心如下所示:

...

$(document).on("click", ".deleteButton", function() {
    $(this).parent().remove();
    updateCartTotal();
});


$('#shoppingCart').droppable({
    hoverClass: 'border',
    accept: '.product',
    drop: function (event, ui) {
        var price = $(ui.draggable).find(".price").html();
        var item = $(ui.draggable).find(".des").html();
        var deleteButton = "<button class='deleteButton'>Delete</button>";
        var newCartEntry = "<div class='selected'>" + item +
            "<span class='price'>" + price + "</span>" + deleteButton +
            "</div>";
        $('#shoppingCart').append(newCartEntry);
        updateCartTotal();
    }
});

...

是描述我的意思小提琴

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

无法弄清楚如何在“ jQuery”中的购物车中添加“总价”部分

来自分类Dev

无法弄清楚如何在Knockout.js中为点击添加属性

来自分类Dev

无法弄清楚如何在此LINQ查询中添加where子句

来自分类Dev

无法弄清楚如何在Knockout.js中为点击添加属性

来自分类Dev

无法弄清楚如何在MASM32中打印数字

来自分类Dev

无法弄清楚在给定情况下如何在输出中编程

来自分类Dev

无法弄清楚如何在我的pygame中繁殖外星人?

来自分类Dev

无法弄清楚如何在C#中的Windows控制台底部消除空白

来自分类Dev

无法弄清楚如何在Swift中遍历数组并查找特定数据

来自分类Dev

无法弄清楚如何在SQL Server 2008中获取我想要的字段的描述字段

来自分类Dev

无法弄清楚如何在 Python3 中重复进程

来自分类Dev

无法弄清楚如何在 augeas 中正确添加 onlyif

来自分类Dev

无法弄清楚如何使用getchar(); 在C中

来自分类Dev

无法弄清楚如何在三维列表中打印第二维

来自分类Dev

如何在购物应用中添加购物车功能?

来自分类Dev

无法弄清楚如何使div较小时使div中的图片不被剪切

来自分类Dev

悬停动画后无法弄清楚如何使文本显示在div中

来自分类Dev

无法弄清楚如何成功跳过form标记中的输入之间的行

来自分类Dev

ROOM 无法弄清楚如何将此字段保存到数据库中

来自分类Dev

如何在购物车总额中添加折扣?

来自分类Dev

Rails:如何在购物车中添加“删除商品”?

来自分类Dev

如何在购物车中添加其他物品?

来自分类Dev

如何在购物车总额中添加折扣?

来自分类Dev

如何在导航栏中添加购物车图片?

来自分类Dev

无法弄清楚如何添加当前日期以发表评论

来自分类Dev

添加Mongoose Embedded后无法弄清楚如何构建C应用程序

来自分类Dev

试图弄清楚如何在Ember中设置此链接

来自分类Dev

试图弄清楚如何在php中填充数组

来自分类Dev

试图弄清楚如何在文件管理器中打开文件夹

Related 相关文章

  1. 1

    无法弄清楚如何在“ jQuery”中的购物车中添加“总价”部分

  2. 2

    无法弄清楚如何在Knockout.js中为点击添加属性

  3. 3

    无法弄清楚如何在此LINQ查询中添加where子句

  4. 4

    无法弄清楚如何在Knockout.js中为点击添加属性

  5. 5

    无法弄清楚如何在MASM32中打印数字

  6. 6

    无法弄清楚在给定情况下如何在输出中编程

  7. 7

    无法弄清楚如何在我的pygame中繁殖外星人?

  8. 8

    无法弄清楚如何在C#中的Windows控制台底部消除空白

  9. 9

    无法弄清楚如何在Swift中遍历数组并查找特定数据

  10. 10

    无法弄清楚如何在SQL Server 2008中获取我想要的字段的描述字段

  11. 11

    无法弄清楚如何在 Python3 中重复进程

  12. 12

    无法弄清楚如何在 augeas 中正确添加 onlyif

  13. 13

    无法弄清楚如何使用getchar(); 在C中

  14. 14

    无法弄清楚如何在三维列表中打印第二维

  15. 15

    如何在购物应用中添加购物车功能?

  16. 16

    无法弄清楚如何使div较小时使div中的图片不被剪切

  17. 17

    悬停动画后无法弄清楚如何使文本显示在div中

  18. 18

    无法弄清楚如何成功跳过form标记中的输入之间的行

  19. 19

    ROOM 无法弄清楚如何将此字段保存到数据库中

  20. 20

    如何在购物车总额中添加折扣?

  21. 21

    Rails:如何在购物车中添加“删除商品”?

  22. 22

    如何在购物车中添加其他物品?

  23. 23

    如何在购物车总额中添加折扣?

  24. 24

    如何在导航栏中添加购物车图片?

  25. 25

    无法弄清楚如何添加当前日期以发表评论

  26. 26

    添加Mongoose Embedded后无法弄清楚如何构建C应用程序

  27. 27

    试图弄清楚如何在Ember中设置此链接

  28. 28

    试图弄清楚如何在php中填充数组

  29. 29

    试图弄清楚如何在文件管理器中打开文件夹

热门标签

归档