Actualmente, tu función multiplicar() realiza la multiplicación de todas las filas de la tabla. Mi sugerencia es que sólo haga la multiplicación de la fila seleccionada, la fila donde el usuario está escribiendo los valores (en las casillas de Cantidad y Valor). Algo como esto (y estoy dándote el código nuevo):
Código javascript
:
Ver originalfunction multiplicar(posFila) {
m1 = document.getElementById("multiplicando_" + posFila).value;
m2 = document.getElementById("multiplicador_" + posFila).value;
r = m1*m2;
document.getElementById("resultado_" + posFila).value = r;
}
Para que esto funcione, tienes que nombrar e identificar a las casillas de la tabla como te lo puse en mi post anterior.
La función recalcular() se gatillará a raíz del evento keypress, como te decía antes (si no conoces este evento, o en general sobre eventos en JS, investígalo googleando). La función lo que hará será recibir el número de la fila, de modo que:
Código javascript
:
Ver originalfunction recalcular(posFila)
{
multiplicar(posFila);
sumar();
}
En verdad con todo esto modificas tu código, pero sólo lo resumes, no lo cambias demasiado de lo que ya tenías.
Saludos!