Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/09/2013, 11:37
Toninito
 
Fecha de Ingreso: abril-2010
Mensajes: 40
Antigüedad: 14 años, 6 meses
Puntos: 0
Poner 2 decimales automaticamente

Buen dia

Tengo el siguiente codigo que pone las decimales en los campos que vas llenando, lo que necesito es que en el total me ponga las decimales automaticamente

ya probe con varios eventos de javascript pero ninguno

hay alguna forma de que se pongan en automatico las decimales en el campo Total

Código HTML:
 <script language="JavaScript">
   function redondea(sVal, nDec){
    var n = parseFloat(sVal);
    var s = "0.00";
    if (!isNaN(n)){
     n = Math.round(n * Math.pow(10, nDec)) / Math.pow(10, nDec);
     s = String(n);
     s += (s.indexOf(".") == -1? ".": "") + String(Math.pow(10, nDec)).substr(1);
     s = s.substr(0, s.indexOf(".") + nDec + 1);
    }
    return s;
   }

   function ponDecimales(nDec){
    document.form1.t1.value = redondea(document.form1.t1.value, nDec);
    document.form1.t2.value = redondea(document.form1.t2.value, nDec);
	document.form1.t3.value = redondea(document.form1.t3.value, nDec);
	document.form1.t4.value = redondea(document.form1.t4.value, nDec);
	document.form1.resultado.value = redondea(document.form1.resultado.value, nDec);

   }
  </script>
  
<script language="javascript">  
function calcula(operacion){  
    var t1 = document.form1.t1.value; 
    var t2 = document.form1.t2.value; 
    var t3 = document.form1.t3.value; 
	var t4 = document.form1.t4.value; 
    var result = eval(t1 + operacion + t2 + operacion + t3 + operacion + t4); 
    document.form1.resultado.value = result ; 
}  
</script> 



<form name="form1">  
  <p>
  <input type="text" name="t1" onChange="ponDecimales(2);calcula('+')" onfocus="if(this.value == '0.00') {this.value=''}" onblur="if(this.value == ''){this.value ='0.00'}" value="0.00" id="t1" >
  <br>
  <input type="text" name="t2" onChange="ponDecimales(2);calcula('+')" onfocus="if(this.value == '0.00') {this.value=''}" onblur="if(this.value == ''){this.value ='0.00'}" value="0.00" id="t2" >
  <br>
  <input type="text" name="t3" onChange="ponDecimales(2);calcula('+')" onfocus="if(this.value == '0.00') {this.value=''}" onblur="if(this.value == ''){this.value ='0.00'}" value="0.00" id="t3" >
  <br />
  <input type="text" name="t4" onChange="ponDecimales(2);calcula('+')" onfocus="if(this.value == '0.00') {this.value=''}" onblur="if(this.value == ''){this.value ='0.00'}" value="0.00" id="t4" >
  </p>
  <p><br>   
    Total: 
    <input type="Text" name="resultado" size="12" onload="ponDecimales(2)" readonly>
  </p>
  
</form> 
De antenamo muchas gracias espero y puedan ayudarme

Saludos.