Foros del Web » Programando para Internet » Javascript »

calculo que arroje solo dos decimales

Estas en el tema de calculo que arroje solo dos decimales en el foro de Javascript en Foros del Web. hola a todos de nuevo, tengo un formulario de calculo que trabaja muy bien pero estoy tratando de que solo me arroje solo dos decimales ...
  #1 (permalink)  
Antiguo 27/01/2010, 12:11
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 17 años, 5 meses
Puntos: 0
Busqueda calculo que arroje solo dos decimales

hola a todos de nuevo, tengo un formulario de calculo que trabaja muy bien pero estoy tratando de que solo me arroje solo dos decimales por ejemplo:

305.33
25.69

el hace los calculo pero me arroja resultados de tres decimales y el script que tengo que pasa de números a letras no me lee los tres decimales sino que lee la a aproximación ejemplo:

99.928 = Noventa y Nueve con Noventa y tres céntimos (99.93)

en si lo que quiero es que me de los resultados en dos decimales o dos centimos, dejo el codigo para que también lo puedan usar... funciona bien pero no da los resultados en dos decimales como to quiero:

Código PHP:

<head>
<
title>calculos</title>
<
script>

function 
dp(price
{
   
string "" price;
   
number string.length string.indexOf('.');
   if (
string.indexOf('.') == -1)
      return 
string '.00';
   if (
number == 0)
      return 
string '00';
   if (
number == 0)
      return 
string '.0';
   if (
number == 0)
      return 
string.substring(-2,string.length-number-2);
return 
string;
}

function 
calculate()
{
document.loginForm.total1.value dp((document.loginForm.puesto.value)* 70 + eval(document.loginForm.peso.value))
document.loginForm.total2.value 360
document
.loginForm.total3.value dp((document.loginForm.quantity3.value))
document.loginForm.subtotal.value dp(eval(document.loginForm.total1.value) * (document.loginForm.total2.value) * (document.loginForm.total3.value)*(document.loginForm.canios2.value))
document.loginForm.tax.value dp((document.loginForm.subtotal.value)/1000)
document.loginForm.total.value dp((document.loginForm.subtotal.value)/1000 + eval(document.loginForm.tasa.value))
}

</script>
</head>

<body bgcolor="#ffffff" onload="calculate" topmargin="0">

<center>
<form name="loginForm" action="mailto:[email protected]" method="post">
    <table border="0" width="98%" cellspacing="1">
        <tr>
            <td width="493" height="6" colspan="2"></td>
            <td width="168" height="6"></td>
            <td width="236" height="6"></td>
            <td width="179" height="6"></td>
        </tr>
        <tr>
            <td width="248"><b><font face="Tahoma" size="2">Ultimo año LPV:</font></b></td>
            <td width="241"><b><font face="Tahoma" size="2">Año a procesar:</font></b></td>
            <td width="168"><b><font face="Tahoma" size="2">Tipo:</font></b></td>
            <td width="236"><b><font size="2" face="Tahoma">Proceso de:</font></b></td>
            <td width="179">&nbsp;</td>
        </tr>
        <tr>
            <td width="248">
            <select size="1" name="canios2" style="border: 1px solid #000000">
            <option value="1">2009</option>
            <option value="2">2008</option>
            <option value="3">2007</option>
            <option value="3">2006</option>
            <option value="3">2005</option>
            </select></td>
            <td width="241">
            <select size="1" name="canios3" style="border: 1px solid #000000">
            <option value="2010" selected>2010</option>
            </select></td>
            <td width="168">
            <select size="1" name="quantity3" style="border: 1px solid #000000">
            <option value="0.10" selected>PARTICULAR</option>
            <option value="0.05">COLECTIVO</option>
            <option value="0.15">CARGA</option>
            <option value="0.05">OTROS</option>
            <option value="0.00">EXONERADO</option>
            </select></td>
            <td width="236" align="justify">
            <select size="1" name="proce" style="border: 1px solid #000000">
            <option value="INSCRITO" selected>INSCRIPCION</option>
            <option value="RENOVADO">RENOVACION</option>
            </select></td>
            <td width="179">
            <input type="text" name="total1" readonly="readonly" size="13"></td>
        </tr>
        <tr>
            <td width="247"><b><font size="2" face="Tahoma"># Puesto:</font></b></td>
            <td width="246"><b><font size="2" face="Tahoma">Peso:</font></b></td>
            <td width="168"><b><font size="2" face="Tahoma">Tasa:</font></b></td>
            <td width="236">&nbsp;</td>
            <td width="179">
            <input type="text" name="total2" readonly="readonly" size="13"></td>
        </tr>
        <tr>
            <td width="247">
            <input type="text" name="puesto" onchange="calculate()" size="8" style="border: 1px solid #000000"></td>
            <td width="246">
            <input type="text" name="peso" onchange="calculate()" size="8" style="border: 1px solid #000000">
            <b><font size="2" face="Tahoma">Kgs.</font></b></td>
            <td width="168">
            <input type="text" name="tasa" onchange="calculate()" size="3" value="1" style="text-align: center; border: 1px solid #000000"></td>
            <td width="236">
            &nbsp;</td>
            <td width="179">
            <input type="text" name="total3" readonly="readonly" size="13"></td>
        </tr>
        <tr>
            <td width="493" colspan="2">&nbsp;</td>
            <td width="168">&nbsp;</td>
            <td align="right">
            <p style="margin-right: 8px"><b><font face="Tahoma" size="2">Sub 
            Total:</font></b></p>
            </td>
            <td width="179">
            <input type="text" name="subtotal" readonly="readonly" size="13"><font size="2" face="Tahoma">Bs.</font></td>
        </tr>
        <tr>
            <td width="493" colspan="2">&nbsp;</td>
            <td width="168">&nbsp;</td>
            <td align="right">
            <p style="margin-right: 8px"><b><font face="Tahoma" size="2">Incri/Renov:</font></b></p>
            </td>
            <td width="179">
            <input type="text" name="tax" readonly="readonly" size="13"><font size="2" face="Tahoma">Bs.</font></td>
        </tr>
        <tr>
            <td width="493" colspan="2"></td>
            <td width="168">&nbsp;</td>
            <td align="right">
            <p style="margin-right: 8px"><b>
            <font face="Tahoma" size="2" color="#FF0000">TOTAL:</font></b></p>
            </td>
            <td width="179">
            <input type="text" name="total" readonly="readonly" size="13" style="color: #FF0000"><font size="2" face="Tahoma">Bs.</font></td>
        </tr>
    </table>
</form>
</center>

</body> 
  #2 (permalink)  
Antiguo 27/01/2010, 12:12
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: calculo que arroje solo dos decimales

round() >_>
  #3 (permalink)  
Antiguo 27/01/2010, 12:12
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: calculo que arroje solo dos decimales

y esto que tiene que ver con PHP??
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #4 (permalink)  
Antiguo 27/01/2010, 13:41
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Tema movido desde PHP a Javascript
  #5 (permalink)  
Antiguo 27/01/2010, 15:05
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: calculo que arroje solo dos decimales

que tal si usas la funcion toFixed, heredada por los numeros. le pasas como argumento la cantidad de decimales a presentar de un numero dado.
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #6 (permalink)  
Antiguo 27/01/2010, 17:26
 
Fecha de Ingreso: diciembre-2008
Mensajes: 65
Antigüedad: 15 años, 4 meses
Puntos: 0
Respuesta: calculo que arroje solo dos decimales

Hola amigo usa lo que dice el otro compañero la funcion toFixed()
  #7 (permalink)  
Antiguo 27/01/2010, 19:20
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: calculo que arroje solo dos decimales

Cita:
Iniciado por zerokilled Ver Mensaje
que tal si usas la funcion toFixed, heredada por los numeros. le pasas como argumento la cantidad de decimales a presentar de un numero dado.
hola me podrías explicar como haría para usar esa función toFixed que me estas indicando??
  #8 (permalink)  
Antiguo 27/01/2010, 21:05
Avatar de zerokilled
Javascripter
 
Fecha de Ingreso: abril-2009
Ubicación: Isla del Encanto, La Borinqueña [+>==]
Mensajes: 8.050
Antigüedad: 15 años
Puntos: 1485
Respuesta: calculo que arroje solo dos decimales

http://www.w3schools.com/jsref/jsref_tofixed.asp
__________________
la maldad es una virtud humana,
y la espiritualidad es la lucha del hombre contra su maldad.
  #9 (permalink)  
Antiguo 28/01/2010, 01:56
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: calculo que arroje solo dos decimales

Cita:
Hey si funciono... pero ahora me estoy tratando de introducir el java dentro del campo de texto donde me da el resultado:

Cita:
<script type="text/javascript">

var num = new Number(aqui );
document.write(num.toFixed(2)+" Bs.");


</script>

Última edición por expecimen; 28/01/2010 a las 02:48
  #10 (permalink)  
Antiguo 28/01/2010, 16:17
 
Fecha de Ingreso: octubre-2006
Ubicación: Ciudad Ojeda, Venezuela
Mensajes: 123
Antigüedad: 17 años, 5 meses
Puntos: 0
Respuesta: calculo que arroje solo dos decimales

alguien sabe como agregar este java en un campo de texto???

<script type="text/javascript">

var num = new Number(aqui );
document.write(num.toFixed(2)+" Bs.");


</script>

Etiquetas: calculo, dos
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 21:56.