Foros del Web » Programando para Internet » Javascript »

redondear un numero

Estas en el tema de redondear un numero en el foro de Javascript en Foros del Web. tengo el siguiente script que me efectua el calculo apartir de una cantidad de otros 7 valores con los primeros tres no tengo problemas pero ...
  #1 (permalink)  
Antiguo 06/09/2004, 06:43
 
Fecha de Ingreso: mayo-2004
Mensajes: 75
Antigüedad: 20 años, 6 meses
Puntos: 0
redondear un numero

tengo el siguiente script que me efectua el calculo apartir de una cantidad de otros 7 valores con los primeros tres no tengo problemas pero con los restantes cuatro aunque me genera bien el valor tiene demasiados decimales, como haria para llevar eso a dos decimales maximo.

Ejemplo mi valor inicial es 25000 el segundo valor es el valor inicial mas el 10% el segundo, el tercero es mas 20% y el cuarto es el doble del valor inicial.

en cuanto a los otros cuatro valores es la división de sus resultados entre 2100, se consiguen los valores pero con demasiados decimales y cuando los actualizo en la base de datos me da un error de OVERFLOW, este el codigo gracias y es urgente! Al menos para mi!

<script language="vbscript">
sub calcular()
valorcosto3 = document.all.costo3.value
valorcosto2 = document.all.costo2.value
valorcosto1 = document.all.costo1.value
valorcosto4 = document.all.costo4.value
factorprecio2 = 110
factorprecio1 = 120
factorprecio4 = 2

costos2 = (valorcosto3 * factorprecio2 / 100)
costos1 = (valorcosto3 * factorprecio1 / 100)
costos4 = (valorcosto3 * factorprecio4)

document.all.costo2.value = costos2
document.all.costo1.value = costos1
document.all.costo4.value = costos4

valorcosto31 = document.all.costo31.value
valorcosto21 = document.all.costo21.value
valorcosto11 = document.all.costo11.value
valorcosto41 = document.all.costo41.value

costos31 = (valorcosto3 / 2100)
costos21 = ((valorcosto3 * factorprecio2 / 100) / 2100)
costos11 = ((valorcosto3 * factorprecio1 / 100) / 2100)
costos41 = ((valorcosto3 * factorprecio4) / 2100)

document.all.costo31.value = costos31
document.all.costo21.value = costos21
document.all.costo11.value = costos11
document.all.costo41.value = costos41

end sub
</script>

<script LANGUAGE="JavaScript">
var tmp=null;

function TomarValor(idproducto,idtalla,costo3,costo2,costo1 ,costo4,costo31,costo21,costo11,costo41,iddetalla, Accion)
{
document.all.iddetalla.value= iddetalla;
document.all.idproducto.value= idproducto;
document.all.idtalla.value= idtalla;
document.all.costo3.value= costo3;
document.all.costo2.value= costo2;
document.all.costo1.value= costo1;
document.all.costo4.value= costo4;
document.all.costo31.value= costo31;
document.all.costo21.value= costo21;
document.all.costo11.value= costo11;
document.all.costo41.value= costo41;
document.all.Accion.value= Accion;
}
function Restablece()
{
document.all.Accion.value= "Grabar";
if (tmp != null)
{
tmp=tmp.parentElement.parentElement.bgColor = '';
tmp=null;
}
}

function otrosfondo(CB)
{
if (tmp != null)
{ tmp=tmp.parentElement.parentElement.bgColor = ''; }
tmp=CB
CB=CB.parentElement.parentElement.bgColor = '#99CCFF';
}

function Limpiar(Formulario)
{
document.all.idproducto.value = ""
document.all.idtalla.value =""
document.all.costo3.value = 0;
document.all.costo2.value = 0;
document.all.costo1.value = 0;
document.all.costo4.value = 0;
document.all.costo31.value = 0;
document.all.costo21.value = 0;
document.all.costo11.value = 0;
document.all.costo41.value = 0;
}

</SCRIPT>
  #2 (permalink)  
Antiguo 06/09/2004, 08:11
Avatar de claray  
Fecha de Ingreso: agosto-2004
Ubicación: ahora... en Caracas
Mensajes: 345
Antigüedad: 20 años, 3 meses
Puntos: 0
Tu problema es de VBScript no JavaScript, de todos modos puedes formatearlos con:

(VBScript)

FormatNumber((valorcosto3 / 2100),2)

Saludos.
__________________
:pirata: El arte de desarrollar es dejar que los otros lo hagan
  #3 (permalink)  
Antiguo 06/09/2004, 09:11
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 9 meses
Puntos: 772
Hola Saintel.

Hecha un vistazo a la FAQ-151 a ver si te sirve -> Pulsame

Saludos,
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 18:22.