Foros del Web » Programando para Internet » Javascript »

recorrer una tabla y calcular

Estas en el tema de recorrer una tabla y calcular en el foro de Javascript en Foros del Web. tengo la siguiente tabla 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 ...
  #1 (permalink)  
Antiguo 13/09/2016, 05:34
 
Fecha de Ingreso: agosto-2002
Ubicación: Lleida
Mensajes: 506
Antigüedad: 21 años, 7 meses
Puntos: 0
recorrer una tabla y calcular

tengo la siguiente tabla
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" onBlur="sumarcolumna()" ></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" onBlur="sumarcolumna()" ></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" onBlur="sumarcolumna()" ></td>
                <td><input name="importe[]" id="importe[]" value="0" type="number" readonly></td>
            </tr>
            <tr>
                <td><input name="moneda[]" id="moneda[]" value="0.10" type="number" readonly></td>
                <td><input name="cantidad[]" id="cantidad[]" value="0" type="number" onBlur="sumarcolumna()" ></td>
                <td><input name="importe[]" id="importe[]" value="0" type="number" readonly></td>
            </tr>
</tbody>
</table>
y quiero que la funcion sumarcolumna() que ejecutarà al salir del campo cantidad realice un recorrido por la tabla y que haga por cada fila
importe[]=cantidad[] * precio[]
y que vaya acumulando en total la columna importe[]

me podeis ayudar. gracias
  #2 (permalink)  
Antiguo 14/09/2016, 05:02
 
Fecha de Ingreso: noviembre-2010
Ubicación: Córdoba
Mensajes: 119
Antigüedad: 13 años, 4 meses
Puntos: 8
Respuesta: recorrer una tabla y calcular

Suponiendo que usas jQuery. He escrito el código a ciegas, no lo he probado, tendrás que retocarlo.

Código Javascript:
Ver original
  1. //
  2. // Aquí tendremos todos los objetos del DOM tr
  3. var $rows = $('#detall > tbody tr'),
  4.     rowsLength = $rows.length
  5.     total = 0
  6.     $row, $totalRow,
  7.     price, amount, totalProduct;
  8.  
  9. for (var i = 0; i < rowsLength; i++ ) {
  10.   $row = $rows [i];
  11.   $totalRow = $($row).find ('#importe');
  12.  
  13.   price = Number($($row).find('#moneda').val().split(',').join('.'));
  14.   amount = Number($($row).find('#cantidad').val());
  15.   totalProduct = price * amount;
  16.  
  17.   $totalProduct.val(totalProduct);
  18.   total += totalProduct;
  19.  
  20. }

Etiquetas: calcular, funcion, input, 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 15:46.