2012-05-31 34 views
0

我需要能夠在我的購物車中有正確的數量,但我使用js的原因是因爲我們有車輛裝配所有列出的產品,但一些在那裏兩次,所以當兩個字段都設置爲某個數字時,它現在的數量最低,而不是將它們相加。當然,這兩個部分的id也是一樣的。以下是我迄今爲止:增量購物車數量與JavaScript(導軌)

$('#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和產品。此外,這似乎有時工作,但並不總是,一般不在即。

回答

0

想通了。它沒有正確排序。需要這個:

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