Foros del Web » Programando para Internet » Javascript »

Borrar el último caracter tipeado

Estas en el tema de Borrar el último caracter tipeado en el foro de Javascript en Foros del Web. Hola qué tal; Estoy validando una caja de texto a través del keypress, si el campo admite sólo texto no permitir números ni caracteres especiales, ...
  #1 (permalink)  
Antiguo 05/10/2005, 07:35
 
Fecha de Ingreso: mayo-2003
Mensajes: 70
Antigüedad: 21 años
Puntos: 1
Busqueda Borrar el último caracter tipeado

Hola qué tal;
Estoy validando una caja de texto a través del keypress, si el campo admite sólo texto no permitir números ni caracteres especiales, mi pregunta es; cómo hago para borrar el último caracter tipeado, porque al presionar un número sale un mensaje de error y se debe borrar ese caracter.

Lo que tengo es esto:
texto = this.value;
texto = texto.substring(0,texto.length-1);
this.value = texto;

pero lo que hace es:
si escribo por ejemplo el nombre Fátima4, emite el mensaje de error, quita la última letra y me coloca el 4, quedando así: Fátim4.


Gracias por su ayuda.
  #2 (permalink)  
Antiguo 05/10/2005, 08:43
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
acabo de probarlo y me funciona bien...

texto = "Fátima4";
texto = texto.substring(0,texto.length-1);
alert(texto);

el "this.value" que te trae? le pusiste un alert para ver..??
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #3 (permalink)  
Antiguo 05/10/2005, 12:33
 
Fecha de Ingreso: mayo-2003
Mensajes: 70
Antigüedad: 21 años
Puntos: 1
Borrar el último caracter tipeado

Yo escribo Fátima4 y retorna el mensaje de error diciendo que nombre debe contener sólo letras; luego coloqué un alert para saber la cadena que me traía y texto tiene sólo Fátima, después del cálculo de la longitud -1, el siguiente alert tiene como valor de texto Fátim y por último pone Fátim4.

texto = this.value;
alert(texto);
texto = texto.substring(0,texto.length-1);
alert(texto);
this.value = texto;

Esto lo estoy haciendo en el onKeyPress de la caja de texto.

Espero sus mensajes de vuelta y muchas gracias.
  #4 (permalink)  
Antiguo 05/10/2005, 12:36
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
en vez de usar "onkeypress" utiliza "onKeyUp"....
me dejas saber
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #5 (permalink)  
Antiguo 05/10/2005, 12:39
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
porque no utilizas mejor esta función??
es mas exacta....

http://www.forosdelweb.com/showpost....51&postcount=4
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
  #6 (permalink)  
Antiguo 05/10/2005, 13:23
 
Fecha de Ingreso: mayo-2003
Mensajes: 70
Antigüedad: 21 años
Puntos: 1
Ya funcionó!!!

Saruman, un amigo encontró una instrucción que es un manejador de eventos para que no muestre la tecla no válida, que es:
event.returnValue= false;

De todas maneras muchas gracias por tu ayuda. Cualquier otra cosa te pego un grito.

Chau y gracias.
  #7 (permalink)  
Antiguo 05/10/2005, 13:28
Avatar de Saruman  
Fecha de Ingreso: mayo-2003
Ubicación: Panama city, Panama, Panama
Mensajes: 1.154
Antigüedad: 21 años
Puntos: 5
Cita:
Iniciado por Mari
Saruman, un amigo encontró una instrucción que es un manejador de eventos para que no muestre la tecla no válida, que es:
event.returnValue= false;

De todas maneras muchas gracias por tu ayuda. Cualquier otra cosa te pego un grito.

Chau y gracias.
ok, cool
__________________
Saruman

One Ring to rule them all, One Ring to find them, One Ring to bring them all and in the darkness bind them.
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 19:27.