<!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" /> <title>VALIDACIONES CON COMODINES</title> <style type="text/css"> <!-body { background-color: #9C6; } --> </style> <SCRIPT> function comprobar_nombre(dato) // FUNCION PARA COMPROBAR QUE SEAN SOLO LETRAS MAYUSCULAS { cadena=dato; var expresion=new RegExp(/[A-Z]/); if(expresion.test(cadena)) alert("correcto"); else alert ("No se admiten números ni letras minúsculas"); } function comprobar_mail(dato) { cadena=dato; var expresion=new RegExp(/[\w-\.]{3,}@([\w-]{2,}\.)*([\w-]{2,}\.)[\w-]{2,4}/); if(expresion.test(cadena)) alert("correcto"); else alert ("mail incorrecto"); } function comprobar_fecha(dato) ) // FUNCION PARA COMPROBAR QUE LA FECHA SEA INGRESADA EN FORMATO DD/MM/AÑO { cadena=dato; var expresion=new RegExp(/^\d{1,2}\/\d{1,2}\/\d{2,4}$/); if(expresion.test(cadena)) alert("correcto"); else alert ("No es el formato correcto dd/mm/año"); } function comprobar_telf(dato) ) // FUNCION PARA COMPROBAR QUE EL NUMERO DE TELEFONO CELULAR SEA CORRECTO { cadena=dato; var expresion=new RegExp(/^[0-9]{2,3}-? ?[0-9]{6,7}$/); if(expresion.test(cadena)) alert("correcto"); else alert ("No es un número telefonico valido"); } function comprobar_ced(dato) ) // FUNCION PARA COMPROBAR QUE LA CEDULA SEA VALIDA { var array_ced = new Array(); // declaracion de arreglo var ced = dato; // asignamos a una variable lo ingresado lon=ced.length; // tamaño de los datos ingresados for( i=9; i >= 0; i-- ) // cargamos al arreglo los numeros de la cedula { array_ced[i]= parseInt(ced % 10); ced = parseInt(ced /10); } if ( lon == 10 ) // condicion para continuar si los digitos son 10 { total = 0; verifica = parseInt(array_ced[9]); for( i=0; i < (lon-1); i++ ) // recorremos las 10 posiciones del arreglo { mult = 0; if ( ( i%2 ) != 0 ) // verificamos si la posicion es par o impar { cot = parseInt(array_ced[i]); total = total + cot; // si es impar se suma a total el valor del arreglo } else { mult = parseInt(array_ced[i] * 2);// si es par se asigna al valor del arreglo por 2 // y si es > 9 se resta 9 y lo sumamos a total if ( mult > 9 ) total = total + ( mult - 9 ); else total = total + mult; } } decena = parseInt(total / 10); decena = (decena+1) * 10; // restamos de la decena superior final = parseInt( decena - total ); // obtenemos el digito verificador if ( ( final == 10 && verifica == 0 ) || ( final == verifica ) ) alert( "La cédula ingresada es valida!!! Digito Verificador es: "+verifica); else alert( "La cédula ingresada no es valida!!! Digito Verificador debe ser:"+final); } else { alert("La cédula ingresada no tiene 10 DIGITOS"); } } </SCRIPT> </head> <!-- LLAMADA A FUNCIONES E INGRESO DE DATOS --> <body> <p align="center">FORMULARIO CON VALIDACIONES SIMPLES</p> <form id="form1" name="form1" method="post" action=""> <table width="100%" border="0"> <tr> <td><label> <div align="right">Nombre</div> </label></td> <td><input name="nom" type="text" id="nom2" onblur="comprobar_nombre(this.form.nom2.value)" size="40" /></td> </tr> <tr> <td><div align="right">Número de cédula:</div></td> <td><input name="nombre2" type="text" id="cedula" onblur="comprobar_ced(this.form.cedula.value)" size="12"/></td> </tr> <tr> <td><div align="right">Fecha:</div></td> <td><input name="nombre3" type="text" id="fecha" onblur="comprobar_fecha(this.form.fecha.value)" size="8"/></td> </tr> <tr> <td><div align="right">Teléfono:</div></td> <td><input name="nombre4" type="text" id="telf" onblur="comprobar_telf(this.form.telf.value)" size="11"/></td> </tr> <tr> <td><div align="right">Mail:</div></td> <td><input name="nombre5" type="text" id="mail" onblur="comprobar_mail(this.form.mail.value)" size="40"/></td> </tr> <tr> <td>&nbsp;</td> <td>&nbsp;</td> </tr> </table> </form> <p>&nbsp;</p> </body> </html>