Foros del Web » Programando para Internet » Javascript »

Caracteres Permitidos

Estas en el tema de Caracteres Permitidos en el foro de Javascript en Foros del Web. Hola a todos. Tengo una duda respecto a como puede validar el ingreso de la letra ñ y Ñ <input name="txt_razon" type="text" size="50" onKeypress= "if ...
  #1 (permalink)  
Antiguo 08/11/2005, 05:40
Avatar de JuanKa  
Fecha de Ingreso: septiembre-2004
Mensajes: 468
Antigüedad: 20 años, 2 meses
Puntos: 1
Caracteres Permitidos

Hola a todos.

Tengo una duda respecto a como puede validar el ingreso de la letra ñ y Ñ

<input name="txt_razon" type="text" size="50"
onKeypress=
"if ( event.keyCode != 32 && event.keyCode != 39 && (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 65 || event.keyCode >122 ) && (event.keyCode != 164) ) {alert('Ha ingresado un caracter no permitido'); txt_razon.focus(); event.returnValue = false;}">

con esto evento me permite ingresar solo numeros y letras Mayusculas y minusculas, pero aparte quiero que me ingrese la Ñ y ñ pero me sale el mensaje de "caracter no permitido", me parece que me estoy equivocando en la condicional , e puesto de varias maneras me no puedo escribir la letra Ñ o ñ y luego tambien lo haria con las vocales acentuadas.


Gracias
  #2 (permalink)  
Antiguo 08/11/2005, 13:28
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 20 años, 1 mes
Puntos: 3
Hola, JuanKa
En efecto, parece que tienes un revoltillo.
Por ahora, sólo admite entre 48 y 57, entre 65 y 122, más el 32 (espacio) y el 39
Al intentar incluir el 164 (la eñe) no te funciona porque es mayor de 122 y por ello está excluido previamente.

Puedes combinarlo:
Código:
if ( event.keyCode != 32 && event.keyCode != 39 && (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 65 || (event.keyCode >122 && event.keyCode <164) || event.keyCode >164  )
o hacerlo en positivo (indicando cuáles valen):
Código:
if ( event.keyCode == 32 || event.keyCode == 39 || event.keyCode == 164 )
else if ( event.keyCode >= 48 && event.keyCode <= 57) 
else if ( event.keyCode >= 65 && event.keyCode <= 122)
else { alert('Ha ingresado un caracter no permitido'); }
La segunda es más farragosa pero se entiende mejor, menos probabilidad de errores al ampliarla. Creo que está bien; pruébalo
__________________
Angel :cool:
  #3 (permalink)  
Antiguo 12/11/2005, 12:51
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 22 años
Puntos: 317
Hola JuanKa , angsanchez :

Se puede usar expresiones regulares.

Cadena de Caracteres

Calculadora de palabras

Expresiones regulares

Un patron para ingreso de datos
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 20:31.