Hola amigos!!
Como sigo sin aprender lo más básico de javascript, necesito que alguien que sí sepa me pueda decir como odifico este script para que, en lugar de la hora, valide la fecha en formato dd/mm/aaaa.
Aquí pongo el script, con todo el código html, pero creo que sabré adaptarlo al formulario :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>cajas de texto y javascript - ejemplo 22</TITLE>
<META http-equiv=Content-Type content="text/html; charset=windows-1252">
<SCRIPT language=JavaScript>
<!-- Begin
function IsValidTime(timeStr) {
// Checks if time is in HH:MM:SS AM/PM format.
// The seconds and AM/PM are optional.
var timePat = /^(\d{1,2}):(\d{2})(:(\d{2}))?(\s?(AM|am|PM|pm))?$/;
var matchArray = timeStr.match(timePat);
if (matchArray == null) {
alert("Formato de fecha no valido. Introduzca una fecha");
return false;
}
hour = matchArray[1];
minute = matchArray[2];
second = matchArray[4];
ampm = matchArray[6];
if (second=="") { second = null; }
if (ampm=="") { ampm = null }
if (hour < 0 || hour > 23) {
alert("La hora debe estar entre 1 y 12. (o entre 0 y 23 para formato militar)");
return false;
}
if (hour <= 12 && ampm == null) {
if (confirm("Por favor, indique qué formato esta usando. OK = formato estandar, CANCEL = formato militar")) {
alert("Debe especificar AM o PM.");
return false;
}
}
if (hour > 12 && ampm != null) {
alert("No debe especificar AM o PM para formato militar.");
return false;
}
if (minute<0 || minute > 59) {
alert ("Los minutos deben estar entre 0 y 59.");
return false;
}
if (second != null && (second < 0 || second > 59)) {
alert ("Los segundos deben estar entre 0 y 59.");
return false;
}
alert('Fecha correcta');;
}
// End -->
</SCRIPT>
<BODY bgcolor="#ffff99">
<P align=center>Validación de hora. El formato debe ser HH:MM:SS AM/PM</P>
<CENTER>
<FORM name=timeform onsubmit="return IsValidTime(document.timeform.time.value);">
<INPUT name=time><BR><INPUT type=submit value=Submit>
</FORM></CENTER></BODY></HTML>
Creo que para los expertos de aquí no tendrá ninguna dificultad pero a mi me está volviendo loco
Muchas gracias por anticipado
Rubén