Cuando trato de validar los campos mediante javascript no entra en la función, ¿Qué puedo hacer?

Hola buenos días, tengo un formulario sencillo donde quiero validar los campos del nombre y el apellido medianta javascript
El problema es que al momento de validarlo, no entra en la función
El código es el siguiente...
<html>
<head>
</head>
<body>
<script type="text/javascript">
function validarform(form) {
if (form.nombre.value.lenght==0) {
form.nombre.focus();
alert('no se ha escrito tu nombre');
return false;
}
if(form.apellido.value.lenght==0) {
form.apellido.focus();
alert('no se ha escrito el apellido');
return false;
}
return true;
}
</script>
<form action="index.php" method="post" name="form" onsubmit="return validarform(this);">
Nombre:
<input type="text" name="nombre"><br/>
Apellido:
<input type="text" name="apellido"><br/>
<input type="submit" name="bt_enviar" value="enviar">
</form>
</body>
</html>
Espero que me puedas decir cual es el problema, ya al que le he preguntado no supo contestarme...
Un saludo
Diego...
Respuesta
1
Bueno pues con Java no es que sepa mucho pero encontré esto que creo te sirve:
<script language="javascript" type="text?javascript">  
function validacion(formulario) {  
    var er_nombre = ?^([a-z]|[A-Z]|á|é|í|ó|ú|ñ|ü|\s|\.|-)+$?            ??letras, '.' y '-' o vacio  
    var er_telefono = ?^([0-9\s\+\-])+$?                        ??numeros, espacios, + o -  
    ??fechas, formato dd?mm?aaaa o d?m?aa  
    var er_mes31dias = ?^([1-3]0|[0-2][1-9]|31|[0-9])\?(1|01|3|03|5|05|7|07|8|08|10|12)\?(1999|20[0-1][0-9]|2020)$?  
    var er_mes30dias = ?^([1-3]0|[0-2][1-9]|[0-9])\?(4|04|6|06|9|09|11)\?(1999|20[0-1][0-9]|2020)$?  
    var er_mes28dias = ?^([1-2]0|[0-2][1-8]|[0-1]9|[0-9])\?(02|2)\?(1999|200[1-3]|200[5-7]|2009|201[0-1]|201[3-5]|201[7-9])$?  
    var er_mes29dias = ?^([1-2]0|[0-2][1-9]|[0-9])\?(02|2)\?(2000|2004|2008|2012|2016|2020)$?  
    ??direccion de correo electronico  
    var er_email = ?^(.+\@.+\..+)$?  
    var x  
    ??comprueba 50 caracteres maximo  
    for(x = 1; x < 5; x++) {  
        if (formulario.elements[x].value.length > 50) {  
            alert('La lontitud máxima permitida para cualquier campo es de 10 caracteres.')  
            return false  
        }  
    }         
    ??comprueba campo de nombre  
    if(!er_nombre.test(formulario.nombre.value)) {   
        alert('Contenido del campo NOMBRE no válido.')  
        return false  
    }         
    ??comprueba campos de telefonos (permite campos vacios y guiones)  
    if( !er_telefono.test(formulario.telefono.value) ) {  
        alert('Contenido del campo TELEFONO no válido.')  
        return false  
    }  
? Comprueba la fecha según calendario (hasta el 2020, ojo)
if (! (er_mes31dias. Test(formulario. Fecha. value) ||   
            er_mes30dias.test(formulario.fecha.value) ||  
            er_mes29dias.test(formulario.fecha.value) ||  
            er_mes28dias.test(formulario.fecha.value))) {  
        alert('Contenido del campo FECHA no válido.')  
        return false  
    }  
    ??comprueba campo de email  
    if(!er_email.test(formulario.email.value)) {   
        alert('Contenido del campo E-MAIL no válido.')  
        return false  
    }         
    alert('Los campos introducidos son CORRECTOS.')  
    return false            ??cambiar por return true para ejecutar la accion del formulario  
}  
<?script> 
<form onsubmit="return validacion(this)" name="FormValidacion">
<small>Nombre:<?small><br>
<input type="text" name="nombre" size="14"><br><br>
<small>Teléfono:<?small><br>
<input type="text" name="telefono" size="14"><br><br>
<small>Fecha (dd?mm?aaaa):<?small><br>
<input type="text" name="fecha" size="14"><br><br>
<small>E-mail:<?small><br>
<input type="text" name="email" size="14"><br><br>
<input type="submit" value="Validar" name="boton_envio">
<input type="reset" value="Borrar" name="boton_borrar"><?form> 
 ////////////////////////////////////////////////////////////////////////////////////////
Ahora en Php que si le entiendo:
Te explico:
Lo que tu haces es crear el formulario:
<form id="form1" name="form1" method="post" action="Untitled-2.php">
<div align="center">
<table  border="0">
<tr>
<td>
<div align="center"><strong>Nombre *:</strong></div>
</td>
<td><input name="txt_nombre" type="text" id="txt_nombre" size="50" /></td>
</tr>
<tr>
<td>
<div align="center"><strong>Apellido *:</strong></div>
</td>
<td><input name="txt_apellido" type="text" id="txt_apellido" size="50" /></td>
</tr>
</table>
  </div>
<p align="center">
    <label>
    <input type="submit" name="Submit" value="Enviar" />
    </label>
  </p>
</form>
Ese formulario puede ir en "formulario.php" luego crea un archivo con nombre "Untitled-2.php" y pegas lo siguiente:
<form id="form1" name="form1" method="post" action="Untitled-2.php">
<div align="center">
<table  border="0">
<tr>
<td>
<div align="center"><strong>Nombre *:</strong></div>
</td>
<td><input name="txt_nombre" type="text" id="txt_nombre" size="50" /></td>
</tr>
<tr>
<td>
<div align="center"><strong>Apellido *:</strong></div>
</td>
<td><input name="txt_apellido" type="text" id="txt_apellido" size="50" /></td>
</tr>
</table>
  </div>
<p align="center">
    <label>
    <input type="submit" name="Submit" value="Enviar" />
    </label>
  </p>
</form>
<p>
  <?Php
//Tomo los datos de los campos de texto
$status="Se ha generado un error, por favor contacte con el administrador.";
$img="img/error.jpg";
$nombre=$_POST['txt_nombre'];
$apellido=$_POST['txt_apellido'];
if (($nombre == "") ||($apellido == "")){
 $status="Te recuerdo que los compos con * son obligatorios";
 $img="img/error.jpg";
} else {
 $status ="Los campos quedaron llenos";
 $img="img/ok.jpg";
}
echo '
<br><br>
<center>
<table>
<tr>
<td>
  <fieldset>
   <legend>Status</legend>
<table width="200" border="0" align="center">
<tr>
<td>
<div align="center"><strong>'.$status.'</strong></div>
</td>
</tr>
<tr>
<td>
<div align="center"><img src="'.$img.'" /></div>
</td>
</tr>
</table>
  </fieldset>
  </td>
</tr>
</table>
</center>
';
?>
// Aquí lo que se hace es una pequeña validación de los dos campos
// Si están vacíos el estatus es que los llene pero si no, el estatus es ok o lo puedo camniar por cualquier proceso como por ejemplo agregarlo a mi base de datos..
Y listo amigo. Cualquier cosa me comentas.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas