рони,
Спасибо, работает. К сожалению, я не учел один момент. У меня есть кнопки + - , при нажатии на которые число из 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 + " руб.");
}
Сумма ндс при нажатии на + или - меняется, а вот "всего" и итоговая сумма внизу -нет. Видимо не хватает какой то строчки.
Не подскажете, какой?