175.- Validar Hora P.- Quiero un script que me valide la hora
R.- Aquí lo tienes.
Versión 1.
Código:
<script>
// script para validar una hora en formato 24h. Por Carlitos ([email protected])//
function valida(str)
{
hora=str.value
if (hora.length!=4) {alert("introducir HHMM");return}
a=hora.charAt(0)
b=hora.charAt(1)
c=hora.charAt(2)
if (a>=2 && b>3) {alert("hora mal :(");return}
if (c>5) {alert("minutos mal :(");return}
alert("hora bien. :)")
}
</script>
Hora (HHMM):<input type="text" name="hhmm" size="4">
<input type="button" value="Valida" onclick="valida(hhmm)">
Versión 2. (Modificación de la versión 1 por AnaLezama)
Código:
<script language="JavaScript">
// Por AnaLezama
function CheckTime(str)
{
hora=str.value
if (hora=='') {return}
if (hora.length>8) {alert("Introdujo una cadena mayor a 8 caracteres");return}
if (hora.length!=8) {alert("Introducir HH:MM:SS");return}
a=hora.charAt(0) //<=2
b=hora.charAt(1) //<4
c=hora.charAt(2) //:
d=hora.charAt(3) //<=5
e=hora.charAt(5) //:
f=hora.charAt(6) //<=5
if ((a==2 && b>3) || (a>2)) {alert("El valor que introdujo en la Hora no corresponde, introduzca un digito entre 00 y 23");return}
if (d>5) {alert("El valor que introdujo en los minutos no corresponde, introduzca un digito entre 00 y 59");return}
if (f>5) {alert("El valor que introdujo en los segundos no corresponde");return}
if (c!=':' || e!=':') {alert("Introduzca el caracter ':' para separar la hora, los minutos y los segundos");return}
</script>
}
<input type=text name=txtHora onBlur="CheckTime(this)" size=12 maxlength=10>
Puedes consultar
este mensaje para más información.