Foros del Web » Programando para Internet » Javascript »

Como validar Tildes en Javascript?

Estas en el tema de Como validar Tildes en Javascript? en el foro de Javascript en Foros del Web. Hola a todos, bueno mi problema es que estoy validando campos como nombres, etc, el problema es que cuando pongo un caracter especial (ejm. á, ...
  #1 (permalink)  
Antiguo 15/04/2005, 16:40
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Pregunta Como validar Tildes en Javascript?

Hola a todos, bueno mi problema es que estoy validando campos como nombres, etc, el problema es que cuando pongo un caracter especial (ejm. á, ü, ñ, etc) no acepta.
bueno lo que hago es un charAt para comparar las cadenas que ingreso con una que he declarado en donde estan todos los caracteres que quiero validar, pero cuando pongo los caracteres especiales en la cadena que he declaradado para la validacion, nada no reconoce.
Alguien me podria ayudar!!!!!!
  #2 (permalink)  
Antiguo 16/04/2005, 09:17
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Hola, gerson
¿Has probado a ver qué valor devuelve el charAt?

Así parece que funciona:
Código PHP:
<script>
var 
vocales="aeiouáéíóú"
function lee(x)
{
    for (
i=0i<x.lengthi++)
    {
        if ( 
vocales.indexOf(x.charAt(i)) !=-alert(x.charAt(i) + " es vocal")
        else 
alert(x.charAt(i) + " no es vocal")
    }
}
</script>
<form>
<input type="text" name="entrada">
<input type="button" value="Leer" onClick="lee(this.form.entrada.value)">
</form> 
__________________
Angel :cool:
  #3 (permalink)  
Antiguo 19/04/2005, 12:40
Avatar de gerson  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 481
Antigüedad: 19 años, 2 meses
Puntos: 4
Hola angsanchez, he probado el codigo y nada sale error al cargar la pagina "Error: Contante sin terminar", hace referencia a la línea en donde esta decalrada las vocales (por las vocales tildadas, pues la quite y funciona normal).

Creo que es problema del servidor que no reconoce estos caracteres pero de todos modos pienso que debe de haber una solucion, auyedme por favor
  #4 (permalink)  
Antiguo 20/04/2005, 12:46
 
Fecha de Ingreso: octubre-2004
Ubicación: España
Mensajes: 894
Antigüedad: 19 años, 6 meses
Puntos: 3
Intenta ver si se arregla declarando el juego de caracteres que usas; dentro del HEAD debes tener
Código HTML:
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1>
<meta http-equiv="Script-Content-Type" content="text/javascript; charset=iso-8859-1"> 
Si no, habrá que filtrar el texto, por ejemplo detectando los acentuados con charCodeAt(). Por ejemplo, este código acepta sólo vocales con o sin acento agudo:
Código PHP:
var aceptadas=[9710110511111710225233237243250//aeiouáéíóú
function lee(x)
{    var 
vale=0
    
for (i=0i<x.lengthi++)
    {    var 
car x.charCodeAt(i)
        for (
j=0j<aceptadas.lengthj++)
        {    if ( 
car == aceptadas[j] ) { vale++; break }
        }
    }
    if (
vale==x.lengthalert("Correcto")
    else 
alert("algún carácter no válido")

Espero que lo puedas adaptar a tu caso.
__________________
Angel :cool:
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 13:07.