|    
			
				20/10/2005, 09:39
			
			
			  | 
  |   |  |  |  |  Fecha de Ingreso: julio-2005 
						Mensajes: 142
					 Antigüedad: 20 años, 3 meses Puntos: 0 |  | 
  |  Convertir de numeros a letras con decimales  
  Hola a todos,navegando encontre el siguiente codigo (no recuerdo el lugar)  Cita:  <html><head>
 
 <title>Convierte de números a letras</title>
 <script language="JavaScript">
 <!--
 
 aUnits=["","One","Two","Three","Four","Five","Six","Seven"  ,"Eight","Nine"]
 aTeens=["","Eleven","Twelve","Thirteen","Fourteen","Fiftee  n","Sixteen","Seventeen","Eighteen","Nineteen"]
 aTens =["","Ten","Twenty","Thirty","Forty","Fifty","Sixty"  ,"Seventy","Eighty","Ninety"]
 
 function getunits(xValue){
 /* This function accepts a one string parameter i.e. "1", "0", "9" etc... */
 return (aUnits[xValue]);
 }
 
 function gethund(xValue){
 /* This function accepts a one string parameter i.e. "1", "0", "9" etc... */
 if (aUnits[xValue] != '')
 return (aUnits[xValue]+' Hundred');
 else
 return (aUnits[xValue])
 }
 
 function teens(xValue){
 return (aTeens[xValue])
 }
 
 function tens(xValue){
 return (aTens[xValue])
 }
 
 function numtowords(xamount){
 /*
 stramt	= amount entered converted to a string
 xmax	= 12 (999 million max) minus the converted string length.
 xstramt	= actual dollars amount without decimal places.
 str1..4	= break down of actual string
 
 */
 
 var stramt = ""+xamount
 var xstramt=''
 var xstr=""
 
 // if a decimal place is not given, then add it.
 if (stramt.indexOf(".") == -1)
 stramt=stramt+'.00'
 
 var xmax= 12 - stramt.length
 // preceed the string with zero fillings to 12 characters (999 million maximum)
 for (c=1; c <= xmax; c++){
 xstramt += '0'
 }
 stramt=xstramt+stramt
 
 xstramt=stramt.substring(0,9)
 
 str1= stramt.substring(0,3)
 str2= stramt.substring(3,6)
 str3= stramt.substring(6,9)
 str4= stramt.substring(10,12)
 
 // if millions add label and reduce the remaining string length.
 if (xstramt.length >=7){
 xstr_=numwords(str1)
 if (xstr_.length >= 3)
 xstr+=xstr_+" Million "
 xstramt=xstramt.substring(3,9)
 }
 
 // if thousands add label and reduce the remaining string length.
 if (xstramt.length >= 4){
 xstr_=numwords(str2)
 if (xstr_.length >= 3)
 xstr+=xstr_+" Thousand "
 xstramt=xstramt.substring(6,9)
 }
 
 // hundreds or tens
 if (xstramt.length <= 3){
 xstr_=numwords(str3)
 xstr+=xstr_+' '
 }
 
 xstr+='and '+str4+'/100'				// optional if cents x/100.
 //xstr+='and '+gettens(str4)+' cents'  // optional if cents to be words.
 return (xstr)
 }
 
 
 function numwords(xstr){
 xhund =gethund(xstr.substring(0,1))
 xtens =gettens(xstr.substring(1,3))
 xwords=xhund
 if (xtens.length > 3)
 xwords+=" "+xtens
 return (xwords);
 }
 
 function gettens(xValue){
 
 /*  This function accepts a two string parameter i.e.  "90", "12", "32" etc...
 
 xval_ = the first character.
 _xval = the second character.
 
 */
 xval_ =xValue.substring(0,1);
 _xval =xValue.substring(1,2);
 
 if (xval_ == '1' && _xval != '0')
 xnum=teens(_xval)
 
 if (xval_ == '1' && _xval == '0')
 xnum="Ten"
 
 if (xval_ != '1' && (_xval != '0' || _xval == '0')){
 xnum=tens(xval_)
 xnum+=" "+getunits(_xval);}
 
 return (xnum)
 }
 
 function go(){
 xvalue= prompt('Entra la cantidad','');
 
 if (xvalue >= 1)
 alert('El valor es: '+xvalue+'\n\n En letras: '+numtowords(xvalue))
 else
 alert('Cantidad mínima = $1.00: Ejecución abortada')
 }
 
 //-->
 </script>
 
 
 </head>
 
 <body text="black" vLink="gray" aLink="red" link="blue" bgColor="white">
 
 
 <script> numtoWords(125.36)</script>
 
 <div align="center">
 <h2><font size="3">Convertidor de números a letras</font><br>
 </h2>
 <form>
 <p>
 
 <input onclick="go()" type="button" value="Pulsa aquí para introducir la cantidad">
 </p>
 </form>
 <p> </div>
 
 
 </body>
 
 </html>
 La cuestion es que lo necesito, pero como soy nueva en javascript no se por donde empezar. A ver si me puedo explicar.  
Tengo una cantidad en mi base de datos la cual la mando llamar por medio de asp realizo algunos calculos con ella y su valor final lo almaceno en una session, mi problema es que ese valor necesito convertirlo en letra, pero directamente y no preguntando el valor a convertir. El ejemplo que me encontre pregunta el valor y la verdad no se como hacerle para que no me pregunte y lo haga directamente (claro tomando el valor almacenado)  
Si alguien me puede hechar la mano se los agradeceria de todo corazon, ya que  voy a tener revision de residencias y no se que hacer.  
Gracias..   Última edición por Baby78; 20/10/2005 a las 10:05
     |