我使用jquery拖放购物车,示例链接是http://jsfiddle.net/GPBUn/5/我需要找到总产品和价格总和,任何帮助
basket.find("ul").append('<li data-id="' + move.attr("data-id") + '">'
+ '<span class="name">' + title + '</span>'
+ '<span class="price">' + price + '</span>'
+ '<input class="count" value="1" type="text" id="item' + ccounts + '">'
+ '<input class="total" value="' + price + '" type="text" id="total' + ccounts + '">'
+ '<button class="delete">✕</button>');
ccounts++;
// + '<button class="total">'+ (price)*($(".count").val())+'</button>'
var tott= tott+ $(this).parents('li').find('.total').html();
// alert(tott);
1条答案
按热度按时间mcvgt66p1#
在逻辑和选择适当的选择器方面也有一些问题,所以我已经纠正了它们。
以下是我在您的代码中修改的内容
addBasket()
函数中,您使用了.parents()
方法,该方法指向所有产品的根级别,即ul
标记,因此总是加载任何被删除项目的第一个项目详细信息。我将其更改为.closest()
,因为这将指向删除的产品<li>
标记的确切根。.live()
已经被弃用,所以我用.on()
代替了它,它可以与delegated Events()顺利工作。参考:https://api.jquery.com/on/.live()
,它不能在动态生成的元素上工作,所以关闭购物篮中产品条目的按钮click
事件和数量字段上的focusout
事件不起作用,因此使用了.on
,甚至改变了选择器。现场演示:
http://jsfiddle.net/GPBUn/25/
始终遵循KISS原则:* 保持简单愚蠢 *