Ver Mensaje Individual
  #1 (permalink)  
Antiguo 16/03/2016, 15:00
Avatar de cassini
cassini
 
Fecha de Ingreso: julio-2009
Mensajes: 98
Antigüedad: 15 años, 4 meses
Puntos: 0
Función para sumar dinero importe exacto

Hola ojalá puedan orientarme un poco

anda desarrollando una función que me suma un array de inputs.

Código Javascript:
Ver original
  1. function validaImporte() {
  2.             var importes = document.getElementsByName('importePedido[]');
  3.             var total = 0;
  4.             var importeTotal = document.getElementById('importeTotal').value;
  5.             for(var i = 0; i < importes.length; i++) {
  6.                 total = total * 100;
  7.                 total = Math.floor(total);
  8.                 total = total / 100;
  9.                 total += parseFloat(importes[i].value) || 0;
  10.             }
  11.        
  12.             if(total == importeTotal){
  13.                 //habilita un botón para registrar los importes
  14.             }else{
  15.                 alert(total + "  !=  " + importeTotal );
  16.             }
  17.         }

acá mi html

Código HTML:
Ver original
  1. <input type="text" id="a" name="importePedido[]" value="18588.42"><br>
  2.     <input type="text" id="a" name="importePedido[]" value="47453.28"><br>
  3.     <input type="text" id="a" name="importePedido[]" value="70094.16"><br>
  4.     <input type="text" id="a" name="importePedido[]" value="144736.69"><br>
  5.     <p>Total de factura<br><input type="text" id="importeTotal" value="280872.54"></p>
  6.     <input type="button" value="validaImporte" onclick="validaImporte()"><br>

al oprimir el botón de validaImporte como resultado me arroja
280872.54000000004 != 280872.54

mi pregunta es como puedo mejorar mi función para que me limite los decimales a solo 2 en lugar de 280872.54000000004

me he encontrado con toFixed la cual no me funciona porque me redondea el resultado y como trabajo con cantidades exactas como dinero debe precisa la suma

hay alguna función para hacer sumas de dinero? como puedo limitar mi resultado a solo dos decimales???

bueno espero haberme dado a entender la verdad esto ya me complico bastante ya que ando iniciando con javascript

muchas gracias por ayuda!
__________________
Humildad, ante todo humildad