使用javascript(rails)增加购物车数量

时间:2012-05-31 14:49:10

标签: javascript ruby-on-rails-3

我需要能够在我的购物车中获得正确的数量,但我使用js的原因是因为我们有车辆的组件列出了所有产品,但有些产品在那里两次因此它目前正在使用底部两个字段都设置为特定数字时的最大数量,而不是将它们一起添加。当然,这两个部分ID也是相同的问题。以下是我到目前为止的情况:

$('#add_to_cart').submit(function(){
    arr1 =  jQuery.makeArray($('input[id*="myap_"]'));
    arr2 = jQuery.makeArray($('input[id*="products_"]'));
    fields = arr1.concat(arr2).sort();
    jQuery.each(fields, function(index, domEle){
      if (index > 0 && $(this).attr('id') == fields[index-1].id){
        curr_val = ($.isNumeric(domEle.value)) ? parseInt(domEle.value) : 0
        second_val = ($.isNumeric(fields[index-1].value)) ? parseInt(fields[index-1].value) : 0
        domEle.value = curr_val + second_val;
        fields[index-1].value = 0;
    }
    });
});

我们必须在同一页面上使用不同类型的产品,这就是为什么有myap和产品的原因。此外,这似乎有时工作但不总是,通常不在ie。

1 个答案:

答案 0 :(得分:0)

想出来。它没有正确排序。需要这个:

fields = arr1.concat(arr2).sort(function(a,b){return a.id > b.id ? 1 : -1;});