Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/10/2014, 15:41
Avatar de Alexis88
Alexis88
Philosopher
 
Fecha de Ingreso: noviembre-2011
Ubicación: Tacna, Perú
Mensajes: 5.552
Antigüedad: 12 años, 5 meses
Puntos: 977
Respuesta: Calculo por Seleccion de Checkbox (No dinámico/No estático)

No es necesario que concatenes el valor de $i al nombre de la clase, pues esta sí puede repetirse, lo que no puede suceder con el id.

Por otro lado, para hacer lo que buscas, puedes intentarlo de esta manera:

Cada checkbox:
Código HTML:
Ver original
  1. <input type = "checkbox" onclick = "sumar()" />

Código Javascript:
Ver original
  1. function sumar(){
  2.     var checks = document.querySelectorAll(":checked"),
  3.         total = checks.length,
  4.         suma = 0;
  5.     for (var i = 0; i < total; i++){
  6.         var celda = checks[i].parentNode,
  7.             fila = celda.parentNode,
  8.             monto = fila.querySelector(".monto_cuota_lin").innerHTML;
  9.         monto = Number(monto.replace(",", ""));
  10.         suma += monto;
  11.     }
  12.     alert(suma);
  13. }

El proceso es simple. Tomo a los checkbox marcados y calculo el total que estos representan, además, declaro una variable que acumulará el resultado de la suma de los valores. Con ayuda de un bucle, recorro al conjunto de checkbox marcados y, en cada iteración, tomo primero a la celda que lo contiene, luego a la fila que contiene a la celda y en dicha fila, busco a la que tenga por clase "monto_cuota_lin" y tomo el valor que contenga. Luego, como el valor contiene una coma, la retiro y ya que el método replace devuelve una cadena y no podemos sumar cadenas, tomo el valor numérico de la misma haciendo uso del objeto Number. Enseguida, sumo a la variable acumuladora el valor de la celda y repito el proceso hasta terminar con el resto de filas.

Finalmente, muestro la suma en un mensaje de alerta, aunque puedes mostrarlo en algún elemento HTML o en consola, ya decides tú.

DEMO

Saludos
__________________
«Juro por mi vida y mi amor por ella, que jamás viviré para el provecho de otro hombre, ni le pediré a otro hombre que viva para el mío».

Ayn Rand