Foros del Web » Programando para Internet » Javascript »

Borrar campo invalidado

Estas en el tema de Borrar campo invalidado en el foro de Javascript en Foros del Web. Hola, como estan, me surgio esta problema hace poco. Tengo un codigo en javascript que me valida si en una caja de texto se ingresa ...
  #1 (permalink)  
Antiguo 29/09/2011, 16:56
 
Fecha de Ingreso: septiembre-2011
Ubicación: irapuato
Mensajes: 27
Antigüedad: 12 años, 7 meses
Puntos: 1
Borrar campo invalidado

Hola, como estan, me surgio esta problema hace poco.
Tengo un codigo en javascript que me valida si en una caja de texto se ingresa un numero y si se ingresa una letra me envia un mensaje de error.
me gustaria que despues del mensaje de error la letra que escribi se borrara.
este es mi codigo

Cita:
function validar(){
var codigo;
codigo = window.event.keyCode;
if (codigo < 48 || codigo > 57 )
{
alert("ingresa un numero");
document.getElementById("Txt1").value = " " ;
}
}
cuando corro el script me muestra el espacio en blanco mas la letra, y lo que quiero es que borre la letra.
Desde ya les doy las gracias y ojala y me puedan ayudar
  #2 (permalink)  
Antiguo 29/09/2011, 17:32
Avatar de Raziel_Ravenheart  
Fecha de Ingreso: agosto-2011
Ubicación: Ibagué, Tolima
Mensajes: 192
Antigüedad: 12 años, 8 meses
Puntos: 37
Respuesta: Borrar campo invalidado

Lo que tienes que hacer es un return, supongo que tienes algo como:

Código HTML:
Ver original
  1. <input type="text" id="Txt1" onkeypress="validar()" />

tienes que cambiarlo por un evento keyup:

Código HTML:
Ver original
  1. <input type="text" id="Txt1" onkeyup="validar()" />

Código Javascript:
Ver original
  1. function validar(){
  2. var codigo;
  3. codigo = window.event.keyCode;
  4. if (codigo < 48 || codigo > 57 )
  5. {
  6. alert("ingresa un numero");
  7. return false;
  8. } else {
  9. return codigo;
  10. }
  11. }

Y listo. Si no funciona avisa!
  #3 (permalink)  
Antiguo 01/10/2011, 02:02
 
Fecha de Ingreso: septiembre-2011
Ubicación: irapuato
Mensajes: 27
Antigüedad: 12 años, 7 meses
Puntos: 1
Respuesta: Borrar campo invalidado

No me funciona, sigue mostrandome la letra que teclee despues de mandar la alerta
  #4 (permalink)  
Antiguo 01/10/2011, 15:28
 
Fecha de Ingreso: marzo-2007
Mensajes: 15
Antigüedad: 17 años, 1 mes
Puntos: 2
Respuesta: Borrar campo invalidado

Tal como te dice Raziel_Ravenheart
en código HTML según el evento que definas debes colocar la palabra return ejemplo:
onkeypress="return validar()" ó
onkeyup="return validar()"

recomendación usa el evento onkeypress ya que este se ejecuta se presiona la tecla justo después del onkeydown, este permite que el llamado a la tecla se ejecute una sola vez aun cuando el usuario deje la tecla presionada, en cambio con onkeyup la funciona validar se va ejecutar cuando el usuario suelte la tecla lo cual deja inútil tu función ya que va escribir el mismo carácter hasta que ocurra el evento.

Etiquetas: campos
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 10:00.