Foros del Web » Programando para Internet » Jquery »

no se recorrer una tabla de inputs y calcular

Estas en el tema de no se recorrer una tabla de inputs y calcular en el foro de Jquery en Foros del Web. hola todos, me siento un poco inútil despues de buscar un montón y no llegar a comprender como hacer lo que os expongo: tengo una ...
  #1 (permalink)  
Antiguo 21/10/2016, 06:38
 
Fecha de Ingreso: agosto-2002
Ubicación: Lleida
Mensajes: 506
Antigüedad: 21 años, 6 meses
Puntos: 0
no se recorrer una tabla de inputs y calcular

hola todos, me siento un poco inútil despues de buscar un montón y no llegar a comprender como hacer lo que os expongo:
tengo una una tabla tal que:
Código:
                              <table class="table table-striped" id="detall">
                                      <thead>
                                         <tr>                            
                                           <th>Moneda</th>
                                           <th>Unidades</th>
                                           <th>Importe</th>
                                         </tr>
                                        </thead>
                                        <tbody> 
                                        	<tr>
                                            	<td><input name="moneda[]" id="moneda[]" value="0.01" type="number" readonly></td>
                                                <td><input name="cantidad[]" id="cantidad[]" value="0" type="number" "></td>
                                                <td><input name="importe[]" id="importe[]" value="0" type="number" readonly></td>
                                            </tr>
                                        	<tr>
                                            	<td><input name="moneda[]" id="moneda[]" value="0.02" type="number" readonly></td>
                                                <td><input name="cantidad[]" id="cantidad[]" value="0" type="number" ></td>
                                                <td><input name="importe[]" id="importe[]" value="0" type="number" readonly></td>
                                            </tr>
                                        	<tr>
                                            	<td><input name="moneda[]" id="moneda[]" value="0.05" type="number" readonly></td>
                                                <td><input name="cantidad[]" id="cantidad[]" value="0" type="number" ></td>
                                                <td><input name="importe[]" id="importe[]" value="0" type="number" readonly></td>
                                            </tr>
...
quiero algo tan sencillo como cada vez que salen del campo cantidad de la tabla
1- calcular el valor de importe de la linea en cuestión
2- sumar los valores de la columna importe

he probado que en el evento onblur="acumular()" en el input de la cantidad
y creo que la cosa va por usar each pero no se hacerlo.
alguien me puede hechar una mano?
gracias.
  #2 (permalink)  
Antiguo 22/10/2016, 02:35
 
Fecha de Ingreso: enero-2014
Ubicación: Navarra
Mensajes: 94
Antigüedad: 10 años, 2 meses
Puntos: 18
Respuesta: no se recorrer una tabla de inputs y calcular

Hola

en tu caso el evento blur no deberias usarlo, ya que al usar type="number" puede ocurrir
que el foco nunca este en ese input.
a ver si asi te funciona:

Código Javascript:
Ver original
  1. $(document).ready(function(){  
  2.  
  3.     $( "input[name^='cantidad']" ).on('mouseup, keyup',function(){
  4.         var cantidad = $(this).val();
  5.         var moneda = $(this).parent().prev().find("input[name^='moneda']").val();
  6.         $(this).parent().next().find('input').val( cantidad * moneda );
  7.         var suma = 0;
  8.             $("input[name^='importe']").each(function(){
  9.             suma += parseFloat($(this).val());
  10.             });
  11.         suma = suma.toFixed(2)
  12.         alert(suma);
  13.     });
  14.  
  15. });

he puesto el valor de la suma en un alert para entender como funciona
espero te ayude
saludos
  #3 (permalink)  
Antiguo 24/10/2016, 06:16
 
Fecha de Ingreso: agosto-2002
Ubicación: Lleida
Mensajes: 506
Antigüedad: 21 años, 6 meses
Puntos: 0
Respuesta: no se recorrer una tabla de inputs y calcular

muchas gracias.
funciona a la perfección.

Etiquetas: calcular, inputs, 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 01:43.