Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   сложение двух чисел и вывод суммы (https://javascript.ru/forum/jquery/63953-slozhenie-dvukh-chisel-i-vyvod-summy.html)

Meattale 11.07.2016 09:40

сложение двух чисел и вывод суммы
 
Доброго времени форумчане.
Подскажите пожалуйста имею:
<td id="linends_' + id + '"class="wigoodprice">' + parseFloat(this.calcNds(num * price)) + ' руб.</td> \

сумма 1, к примеру 15.25

<td id="linesum_' + id + '">'+ parseFloat(price * num) +' руб.</td> \

сумма 2, к примеру 100

Нужно сделать сумма 1 + сумма 2. Когда делаю
<td id="linesum_' + id + '">'+ parseFloat(price * num) + parseFloat(this.calcNds(num * price))  +' руб.</td> \

то получаю 10015,25
Как сделать 115,25?:(

рони 11.07.2016 10:44

Meattale,
<td id="linesum_' + id + '">'+ (+parseFloat(price * num) + +parseFloat(this.calcNds(num * price)))  +' руб.</td> \

Meattale 11.07.2016 11:53

Вложений: 1
рони,
Спасибо, работает. К сожалению, я не учел один момент. У меня есть кнопки + - , при нажатии на которые число из 2 го поста должно меняться (умножение или деление).

Есть код:
var productLine = '<tr class="bitem" id="wigoodline-' + id + '"> \
                                                    <td>'+ id +'</td> \
                                                    <td><a href="' + url + '">' + photo + name +'</a></td> \
                                                    <td id="lineprice_' + id + '"class="wigoodprice">' + price + ' руб.</td> \
                                                    <td id="linendsinperc_' + id + '"class="wigoodprice">' + nds + ' %</td> \
                                                    <td id="linends_' + id + '"class="wigoodprice">' + parseFloat(this.calcNds(num * price)) + ' руб.</td> \
                                                    <td> \
                                                    <div class="basket_num_buttons" id="minus_' + id + '">-</div> \
                                                    <span class="basket_num" id="basket_num_' + id + '">'+ num +'</span> \
                                                    <div class="basket_num_buttons" id="plus_' + id + '">+</div></td> \
                                                    <td id="linesum_' + id + '">'+ (parseFloat(price * num) + parseFloat(this.calcNds(num * price)))  +' руб.</td> \
                                                    <td><a href="#" onclick="' + this.objNAME + '.delItem(\'' + id + '\')"><img src="data:image/jpeg;base64,'+ this.IMG + '" /></a></td> \
                                                    </tr>'; 
                }
            $("#btable").append(productLine);
            
            $(".basket_num_buttons").data("min-value");
            }
        //* кнопки +/-
        var self = this;
        for(var ids in this.IDS)
            {
            $('#minus_' + this.IDS[ids]).bind("click", function() {
            var cartItemID =  $(this).attr("id").substr(6);
            var cartNum = parseInt($("#basket_num_" + cartItemID).text());
            var cartNum = (cartNum > 1) ? cartNum - 1 : 1;
            self.DATA[cartItemID].num = cartNum;
            
            $("#basket_num_" + cartItemID).html(cartNum);
            var price = parseFloat( $("#lineprice_" + cartItemID).html() );
            $("#linesum_" + cartItemID).html( parseFloat(price * cartNum) + ' руб.' );
            $("#linends_" + cartItemID).html( parseFloat(self.calcNds(price * cartNum))  + ' руб.' );
            
            
            self.sumAll();
            
            self.reCalc();
            
            });
            
            $('#plus_' + this.IDS[ids]).bind("click", function() {
            var cartItemID =  $(this).attr("id").substr(5);
            var cartNum = parseInt($("#basket_num_" + cartItemID).text());
            var cartNum = (cartNum < 1000000) ? cartNum + 1 : 1000000;
            self.DATA[cartItemID].num = cartNum;
            $("#basket_num_" + cartItemID).html(cartNum);
            var price = parseFloat( $("#lineprice_" + cartItemID).html() );
            $("#linesum_" + cartItemID).html( parseFloat(price * cartNum)  + ' руб.' );
            $("#linends_" + cartItemID).html( parseFloat(self.calcNds(price * cartNum))  + ' руб.' );
            
            self.sumAll();
            self.reCalc();
            
            });
            
            }
        this.sumAll();  
        
        }
    this.sumAll = function()
        {
        var sum = 0;
        for(var idkey in this.DATA) { sum += parseFloat(this.DATA[idkey].price * this.DATA[idkey].num); }
        $("#bsum").html(sum + " руб."); 
        }

Сумма ндс при нажатии на + или - меняется, а вот "всего" и итоговая сумма внизу -нет. Видимо не хватает какой то строчки.
Не подскажете, какой?

рони 11.07.2016 14:31

Meattale,
пас, не осилить


Часовой пояс GMT +3, время: 20:06.