У меня есть JavaScript, как показано ниже:OnChange событие повторяет вычисление после редактирования и то же поле
function calculateBill(id,price)
{
var t = document.getElementById('total').value;
var qty = document.getElementById('qty_'+id).value;
var total = qty * price;
var tcost = Number(t) + Number(total);
document.getElementById('total').value = '';
//tcost = parseFloat(tcost);
document.getElementById('total').value = tcost.toFixed(0) ;
}
Эта функция вызывается в OnChange событие <input type="text" id = "qty_<?php echo $i2; ?>" name="qty_<?php echo $i2; ?>" onchange="calculateBill('<?php echo $i2; ?>','<?php echo round($r2[$i2]['ret_price'],2); ?>')" />
Так как сво OnChange событие, он вычисляет общую стоимость, когда я измените значение. Теперь моя проблема в том, когда я хочу обновить ранее введенное значение, оно вычисляет новую сумму до общей суммы.
(Предположим, что предыдущее значение для количества 2, ставка составляет 5 так, общая
5 * 2 = 10
Следовательно, в общей сложности 10 из функции яваскрипта
Теперь, если я редактировать Quanity 1 , insted 5 * 1 = 5, я получу 10 + (5 * 1) = 15! ) Как я могу предотвратить это?
Ну это выводит только отдельные итоги, в которых мне нужно рассчитать текущую общую сумму! – Nitish
Что такое current_total_amount? Это (цена * количество) или oldTotal + (цена * количество)? –
В моей функции 't = предыдущая общая стоимость',' total = цена для текущей строки', 'tcost = предыдущая цена + текущая цена строки' – Nitish