> Esta es la función que chequea valores introducidos a través de un
> campo input HTML con la que quiero *DESCARTAR* todo lo que *NO SEAN LETRAS,
> vocales tildadas, las eñes, el espacio y el guión - .* El resto, debería
> retornar false.
>
> function Chequear_campo_ALFABETICO(campo_ALFABETICO){
> var patron_ALFABETICO = /[^a-zA-ZáéíóúñÁÉÍÓÚÑ\ \-]*/;
> return(patron_ALFABETICO.test(campo_ALFABETICO));
> }
*Me parece* que el error está en poner el * en lugar de +.
El asterisco significa que el carácter que lo precede puede aparecer
cero, una, o más veces... Si ponés un número, las letra a (por decir
una cualquiera de tu patrón) está apareciendo 0 vez... por lo que la
expresión regular retorna true.
Si reemplazás el * por +, para obligar a que tu patrón esté "1 o más
veces" estarías logrando lo que querés...
Un mínimo detalle para simplificar un poco la expresión regular: si
usás "i" luego de la barra de cierre, la expresión regular no
diferencia entre minúsculas y mayúsculas y la podés escribir así:
var patron_ALFABETICO = /[^a-záéíóúñ\ \-]+/i;
___
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a Ovillo@lists.ovillo.org
Puedes modificar tus datos o desuscribirte en la siguiente dirección:
http://lists.ovillo.org/mailman/listinfo/ovillo