Comunidad de diseño web y desarrollo en internet online

campo text numerico

Citar            
MensajeEscrito el 29 Nov 2008 01:34 am
Hola a todos ,

Como hacer para que mi campo valor.text
solo me permita ingresar numeros y que sea restringuido para poder ingresar solo 3 digitos

Por zonwebperu

24 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 29 Nov 2008 01:58 am
a ver si te sirve

hize un TextInput
lo seleccione y en Inspector de componentes
me fui a Parametros
y ahi en MaxChars puse 3
y en restrict puse 0123456789

Por tribak

Claber

2448 de clabLevel

6 tutoriales

Genero:Masculino   Héroes

Fotógrafo o algo

firefox
Citar            
MensajeEscrito el 29 Nov 2008 04:14 am
Hola

si usas una instancia de TextField o usas el componente TextInput, por codigo seria asi:

Código :

//Maximo 3 caracteres
mytext_txt.maxChars = 3;
//Solo digitos
mytext_txt.restrict = "0-9";


si quieres que acepte el guion como signo de negatividad:

Código :

mytext_txt.restrict = "0-9\\-\\";

si quieres que acepte el guion y el punto:

Código :

mytext_txt.restrict = "0-9\\-\\.\\";

te recomiendo que si usas las anteriores con punto, guion o ambos hagas una validacion del campo de texto como la siguiente:

si usas el componente TextInput:

Código :

mytext_txt.addEventListener( "focusOut", this );

function focusOut( obj:Object ):Void
{
if( isNaN(Number(obj.target.text)) )
{
obj.target.text = "0";
}
}

si usas una instancia de TextField:

Código :

mytext_txt.onKillFocus = function( newFocus:Object ):Void
{
if( isNaN(Number(this.text)) )
{
this.text = "0";
}
}

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

msie7
Citar            
MensajeEscrito el 29 Nov 2008 04:55 am
Ok amigo buenisima respuesta funiona de maravilass mil gracias por toda la ayuda.

tengo un tablero con botones que los botones me permiten ingresar lo numeros.

recibe_numeros.text

on(release){
setNumber(1);
}
on(release){
setNumber(2);
}
on(release){
setNumber(3);
}
on(release){
setNumber(4);
}

-
-
-
-
-
on(release){
setNumber(10);
}-

no me funciona cuando imgreso numeros del tablero pero funcioan muy bien cuando campo es ingreso de datos ahi si funciona todo bien pero cuando quiero ingresar con botones no funiona alguien me puede ayudar mil gracias por sus respuestas .

Por zonwebperu

24 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 29 Nov 2008 05:00 am
Ok AMIGOS MUCHISIMAS GRACIAS YA NO SE PREOCUPEN EN RESPONDER LA SOLUCION LO HISE DE LA SIGUIENTE FORMA


function setNumber (number) {
if(recibe_numeros.text.length < 5 && decIn == 0){
tempVal = (tempVal*10)+number;
}else if(recibe_numeros.text.length < 5){
tempVal = tempVal + (number/(Math.pow(10,decCount)));
tempNum = Math.pow(10,decCount);
decCount++;
}
}

Por zonwebperu

24 de clabLevel



Genero:Masculino  

firefox
Citar            
MensajeEscrito el 29 Nov 2008 06:42 am
Hola, puedo ver que estas haciendo algo como una calculadora, supongo, o un tablero de numeros, entonces te recomiendo que trates los valores introducidos con el tablero de botones como texto y cuando requieras el numero uses la conversion Numero() o parseInt() solo que esta ultima fue desfazada asi que es mas recomendable Number(), bueno mira:

tu funcion optimizada:

Código :

function setNumber ( number:Number ):Void {
if(recibe_numeros.text.length < 5 ) {
tempNum = Math.pow( 10, decCount++ );
tempVal = (decIn == 0)? ( number + tempVal * 10 ) : (tempVal + number / tempNum) ;
}
}


las funcion que te recomiendo:

Código :

function setNumber ( number:Number ):Void {
if(recibe_numeros.text.length < 5 ) {
recibe_numeros.text = number + recibe_numeros.text;
}
}
function getNumber ( Void ):Number{
return Number(recibe_numeros.text);
}
[/code]

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

msie7
Citar            
MensajeEscrito el 29 Nov 2008 06:46 am
me equivoque en el orden, la funcion es asi:

Código :

function setNumber ( number:Number ):Void 
{
if(recibe_numeros.text.length < 5 ) 
{
//recibe_numeros.text += number;
recibe_numeros.text = recibe_numeros.text + number;
}
}

function getNumber ( Void ):Number
{
return Number(recibe_numeros.text);
}


pruebalo, a lo mejor es lo que necesitas.

Por LongeVie

Claber

1741 de clabLevel

1 tutorial

Genero:Masculino  

En un lugar, re moto.

msie7
Citar            
MensajeEscrito el 26 Mar 2009 03:21 pm

Por juanmy

13 de clabLevel



Genero:Masculino  

España

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.