Hola a todos!!!
¿Cómo puedo comprobar que la hora introducida es correcta en una caja de texto de un form?
Muchas Gracias :)
| |||
Re: Validar HORA introducida en form Algo así te puede servir?
Código:
Sigue... <HTML> <HEAD> <TITLE>Validaciones de Fechas y Horas</TITLE> <SCRIPT language="JavaScript"> numeros="0123456789"; separadorfecha="/"; var separadorhora=":"; error= new creaerror(); errores= new Array(); errores[1]="Campo vacio no contiene ningún valor "; errores[2]="Carácter ilegal en una fecha"; errores[3]="Faltan separadores en una fecha"; errores[4]="Año incorrecto en una fecha"; errores[5]="Mes incorrecto en una fecha"; errores[6]="Día incorrecto en una fecha"; errores[7]="Carácter ilegal en una hora"; errores[8]="Faltan separadores en una hora"; errores[9]="Hora incorrecta en una hora"; errores[10]="Minutos incorrectos en una hora"; errores[11]="Segundos incorrectos en una hora"; // Crea un objeto que guarda un indice a la posición y al mensaje de error function creaerror() { this.valor=0; this.posicion=0; return this } // Determina si un caracter es un número function numero(car) { return (numeros.indexOf(car)>=0) } function compruebahora(contenido,error) { if ((contenido.length==0)) { error.valor=1; error.posicion=1; return false; } var nsep=0; // Comprobación de la sintáxis de una hora for (var i=0; i<contenido.length; ++i) { var car=contenido.charAt(i); if (!numero(car) && car!=separadorhora) { error.valor=7; error.posicion=i+1; return false; } if (car==separadorhora) nsep++ } if (nsep!=2) { error.valor=8; error.posicion=i+1; return false; } // Comprobación de la semántica de una hora var pos1=contenido.indexOf(separadorhora); var horas=contenido.substring(0,pos1); var pos2=contenido.indexOf(separadorhora,pos1+1); var minutos=contenido.substring(pos1+1,pos2); |
| |||
Re: Validar HORA introducida en form
Código:
var segundos=contenido.substring(pos2+1,10); if (horas>24||horas.length>2) { error.valor=9; error.posicion=2; return false; } if (minutos>59||minutos.length>2) { error.valor=10; error.posicion=4; return false; } if (segundos>59||segundos.length>2) { error.valor=11; error.posicion=6; return false; } return true } function ejecuta() { var correcto; correcto=compruebahora(window.document.formulario.campo.value,error); if (correcto) alert("El campo es válido") else alert("El campo NO es válido. ERROR:"+errores[error.valor]+ " en la posicion "+error.posicion); } </SCRIPT> </HEAD> <BODY> <FORM NAME="formulario" ACTION=""> <CENTER> <B>Validaciones de Fechas y Horas</B><BR><BR> Dato: <INPUT TYPE="Text" VALUE="" NAME="campo" MAXLENGTH=10 SIZE=10><BR><BR> <INPUT TYPE="Button" VALUE="Validahora" onClick="ejecuta()"> </CENTER> </FORM> </BODY> </HTML> <hr noshade size=1><img src="http://www.gograph.com/Images-8712/ClipArt/cat03.gif" height="50" border=0 align="absmiddle"> <font size="2" face="verdana" color="#000000">bet[/CODE] |