JQuery计算它不起作用的总价格金额

时间:2017-12-16 20:30:16

标签: javascript jquery ejs

我正在尝试计算商品的总价格数量,但它并未合并所有已点击的商品。它只显示一个项目的当前价格。你能帮助我吗?我被困在这里,谢谢!

<div class="tab-content clearfix">
    <% for(var i=0; i<categories.length; i++){ %>
        <div class="tab-pane <% if(i==0){ %> active <% } %>" id="<%= categories[i].id %>a">
            <% for(var j=0; j<items.length; j++){ %>
                    <% if(items[j].category_id == categories[i].id){ %>
                <div class="item  col-xs-4 col-lg-4">
                    <div class="thumbnail">
                        <img class="group list-group-image items_img" src="/pic_items/<%= items[j].picture_path %>" data-title='/anime_items/<%= items[j].anime_path %>' data-target='<%= items[j].price %>' alt="Test" />
                        <div class="caption">
                            <h4 class="group inner list-group-item-heading">
                            <%= items[j].title %>   
                            </h4>
                            <p class="group inner list-group-item-text"> <%= items[j].description %> </p>
                            <div class="row">
                                <div class="col-xs-12 col-md-6">
                                    <p class="">Width <%= items[j].width %> CM</p>
                                    <p class="">Height <%= items[j].height %> CM</p>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
                <% } %>
            <% } %>
        </div>
    <% } %>
</div>

这里是JQuery

   $(document).ready(function(){
        $('.items_img').click(function(event){
          var total = $(this).attr('data-target');
          $('data-target:clicked').each(function(){
            total += parseInt($(this).val());

          });
          if (total == 0) {
              $('#cost').val('');
          } else {
            $('#cost').val(total);
          }
        });
   });

1 个答案:

答案 0 :(得分:0)

pesudo :clicked不存在。只有:target但这只会返回最新点击的元素。

我可以在点击时设置一个is-selected类,并使用该类访问所选元素。

$(document).ready(function() {
    $('.items_img').click(function(event) {
        var total = 0;
        $(this).toggleClass('is-selected');
        $('.items_img.is-selected').each(function() {
            total += $(this).attr('data-target');
        });
        if (total == 0) {
            $('#cost').val('');
        } else {
            $('#cost').val(total);
        }
    });
});