Foros del Web » Programando para Internet » Jquery »

Sumar columna de tabla

Estas en el tema de Sumar columna de tabla en el foro de Jquery en Foros del Web. Buenas tardes, me preguntaba como poder sumar datos de una columna hasta una determinada fila de una tabla HTML en jquery. Por Ejemplo concepto | ...
  #1 (permalink)  
Antiguo 23/09/2015, 10:06
 
Fecha de Ingreso: julio-2013
Ubicación: Temuco
Mensajes: 48
Antigüedad: 11 años, 3 meses
Puntos: 0
Exclamación Sumar columna de tabla

Buenas tardes, me preguntaba como poder sumar datos de una columna hasta una determinada fila de una tabla HTML en jquery.

Por Ejemplo


concepto | valor
valor1 | 1
valor2 | 2
valor3 | 3
valor4 | 4
valor5 | 5

valor hasta valor3 = 6


de que manera puedo hacerlo? alguna idea?
  #2 (permalink)  
Antiguo 25/09/2015, 16:26
Avatar de Drako_18  
Fecha de Ingreso: mayo-2005
Ubicación: Madrid
Mensajes: 505
Antigüedad: 19 años, 5 meses
Puntos: 16
Respuesta: Sumar columna de tabla

Buenos días compañero,

Veamos el caso...
1º) Recorrer los 3 primeros registros.
2º) Obtener el valor de la columna y sumarlo.

Vamos a ello:
Código HTML:
Ver original
  1. <table id="MiTabla">
  2.     <thead>
  3.         <tr>
  4.             <th>Concepto</th>
  5.             <th>Valor</th>
  6.         </tr>
  7.     </thead>
  8.     <tbody>
  9.         <tr>
  10.             <td>Valor 1</td>
  11.             <td>1</td>
  12.         </tr>
  13.         <tr>
  14.             <td>Valor 2</td>
  15.             <td>2</td>
  16.         </tr>
  17.         <tr>
  18.             <td>Valor 3</td>
  19.             <td>3</td>
  20.         </tr>
  21.         <tr>
  22.             <td>Valor 4</td>
  23.             <td>4</td>
  24.         </tr>
  25.         <tr>
  26.             <td>Valor 5</td>
  27.             <td>5</td>
  28.         </tr>
  29.     </tbody>

Código Javascript:
Ver original
  1. var $suma = 0;
  2.  
  3. $("#MiTabla tbody tr:nth-child(-n+3)").each(function () { //Con esto recorremos los 3 primeros elementos hijos.
  4.     $suma += parseInt($(this).children("td:eq(1)").html()); //eq(1) es, el índice del elemento que queremos obtener, teniendo en cuenta que comienza por 0.
  5. });
  6.  
  7. alert("Mi suma es: " + $suma);

Referencia:
https://developer.mozilla.org/es/doc...S/%3Anth-child
http://www.w3schools.com/jsref/jsref_parseint.asp


Un saludo!!!
__________________
Rubén Espada
Desarrollador full stack .Net (Angular + JS + .Net Core)

Última edición por Drako_18; 25/09/2015 a las 16:28 Razón: Mejora visualización.

Etiquetas: columna, tabla
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:26.