Comunidad de diseño web y desarrollo en internet online

validacion de caja de texto para nombres de usuarios

Citar            
MensajeEscrito el 14 Sep 2009 06:03 am
buenas noches estoy haciendo unas pruebas en javascript en una caja de texto que es solo para colocar el nombre de usuario hasta el momento solo detecto numero y espacios nulos , pero me gustaria detectar todos los caracteres que no corresponden a letras para que sea una validacion correcta.

Este es mi codigo

function validatename(names){

if (names.length<4) {
alert("Escriba por lo menos 4 caracteres en el campo \"Nombre\".");
frmSample.nom.focus();
return false;
}

if(/[0-9]/.test(document.frmSample.nom.value)){
alert("solo letras");
frmSample.nom.focus();
return false;
}

}

Espero y alguien me brinde la ayuda necesaria, de lo contrario muchas gracias disculpen las molestias

Por mottas

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 14 Sep 2009 04:54 pm
Sencillo, en vez de verificar si lo que se ingresa es un numero o un simbolo, haz el proceso a la inversa verifica si es una letra, niega tal afrimacion y obtendras el resultado que esperas, aqui te dejo tu código ya modificado:

Código Javascript :

function validatename(names){

if (names.length<4) {
  alert("Escriba por lo menos 4 caracteres en el campo \"Nombre\".");
  frmSample.nom.focus();
  return false;
}

if (!(/^[a-zA-Z]$/.test(document.frmSample.nom.value))){
  alert("solo letras");
  frmSample.nom.focus();
  return false;
}


Una opcion mas corta sería:

Código Javascript :

function validatename(names){
if (!(/^[a-zA-Z]{4,}$/.test(document.frmSample.nom.value))){
  alert("Error en Campo \"Nombre\"\r\nIngrese minimo 4 caracteres. Solo se permite letras.");
  frmSample.nom.focus();
  return false;
}

Por NeoCesar

Claber

1415 de clabLevel

14 tutoriales

Genero:Masculino  

Algun lugar dentro de la Matrix (Lima - Perú)

msie8
Citar            
MensajeEscrito el 15 Sep 2009 02:35 am
muchas gracias por tu aporte brother me sirvio mucho el consejo mil gracias

Por mottas

2 de clabLevel



 

firefox
Citar            
MensajeEscrito el 20 Sep 2009 07:54 am
Lo que tienes que hacer es validar por expresiones regulares, son un poco confusas de entender pero te da un forma de validar bastante flexible.. les dejo un json que cree para validaciones:

Guardan el siguiete fichero como validator.js o como gusten nadas incluyalo antes de instanciar el validator

Código Javascript :

/*
 * psudoclase para validar formulario atravez de expreciones
 * regulares
 * JFcoDiaz
 * [email protected]
* @fcoDiaz 
* 
 **/

function obj(id){
      return (document.getElementById(id))?document.getElementById(id):undefined;
   }

function validator(){
    this.objetos=new Array();
    this.add = function(IdObj,strPropiedad,strMensajeError,filtro){
        if(obj(IdObj)==undefined){
            alert(IdObj+" No Existe");
        }
        this.objetos[this.objetos.length]={
            'obj':obj(IdObj),
            'propiedad':strPropiedad,
            'mensaje':strMensajeError,
            'filtro':filtro
        }
    }
    this.test = function(){
        for(var i in this.objetos){
            var otem=this.objetos[i]            
            if(!otem.filtro.test(otem.obj[otem.propiedad])){
                alert(otem.mensaje);
                try{
                    otem.obj.focus();
                }catch(e){}
                return false;
            }
        }
        return true;
    }
}


eso fue el cuerpo de la pseudoclases o JSON bueno ahora como lo uso.. esto es lo bonito :)
ejemplo tengo el siguiente form:

Código HTML :

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="validator.js"></script>
<script type="text/javascript">
function validar(form){
      var v=new validator();  
            v.add("edad","value","Edad Solo pueden ser numeros",/^\d+$/);
            v.add("nombre","value","Escriba En Nombre de la Persona de Contacto en su empresa",/.{1}/);
            v.add("email","value","Direccion de Email Invalido",/^[A-Za-z][A-Za-z0-9_\.]*@[A-Za-z0-9_]+\.[A-Za-z0-9_.]+[A-za-z]$/);
        if(!v.test()) return false;
      alert("se envia el Form");
}
</script>
<title>Test Validator</title>
</head>

<body>
<form action="" method="" onsubmit="return validar(this)">
Nombre <input type="text" name="nombre" id="nombre" /><br />
Edad  <input type="text" name="edad" id="edad" /><br />
Email <input type="text" name="email" id="email" /><br />
<input type="submit" value="Enviar" />
</form>
</body>
</html>



bueno espero que este json le sirva mas q a uno, es algo enredoso empesar a definir las expreciones regulares pero cuando se dominan este json se hace un amor

Por wariodiaz

55 de clabLevel



 

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.