Código de JavaScript - Validar que una fecha este comprendida en un periodo máximo de un año

Imágen de perfil

Validar que una fecha este comprendida en un periodo máximo de un añográfica de visualizaciones


JavaScript

Publicado el 15 de Diciembre del 2012 por Xavi
7.081 visualizaciones desde el 15 de Diciembre del 2012. Una media de 35 por semana
Código que valida que una fecha sea correcta y este comprendida en un periodo máximo de un año desde la fecha actual.

Versión 1

Publicado el 15 de Diciembre del 2012gráfica de visualizaciones de la versión: Versión 1
7.082 visualizaciones desde el 15 de Diciembre del 2012. Una media de 35 por semana
estrellaestrellaestrellaestrellaestrella
estrellaestrellaestrellaestrella
estrellaestrellaestrella
estrellaestrella
estrella

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<html>
<head>
<title>Valida que una fecha este comprendida en un periodo máximo de un año</title>
<!-- http://www.lawebdelprogramador.com -->
 
<script type="text/javascript">
/**
 * Funcion que devuelve true o false dependiendo de si la fecha es correcta.
 * Tiene que recibir el dia, mes y año
 */
function isValidDate(day,month,year)
{
    var dteDate;
 
    //En javascript, el mes empieza en la posicion 0 y termina en la 11 siendo 0 el mes de enero
    //Por esta razon, tenemos que restar 1 al mes
    month=month-1;
    //Establecemos un objeto Data con los valore recibidos
    // Los parametros son: año, mes, dia, hora, minuto y segundos
    // getDate(); devuelve el dia como un entero entre 1 y 31
    // getDay(); devuelve un num del 0 al 6 indicando siel dia es lunes, martes, miercoles ...
    // getHours(); Devuelve la hora
    // getMinutes(); Devuelve los minutos
    // getMonth(); devuelve el mes como un numero de 0 a 11
    // getTime(); Devuelve el tiempo transcurrido en milisegundos desde el 1 de enero de 1970 hasta 
    // el momento definido en el objeto date
    // setTime(); Establece una fecha pasandole en milisegundos el valor de esta.
    // getYear(); devuelve el año
    // getFullYear(); devuelve el año
    dteDate=new Date(year,month,day);
 
    //Devuelva true o false...
    return ((day==dteDate.getDate()) && (month==dteDate.getMonth()) && (year==dteDate.getFullYear()));
}
 
/**
 * Funcion que valida que una fecha este comprendida en un periodo máximo de un
 * año desde la fecha actual
 * Tiene que recibir la fecha en formato español: dd/mm/yyyy
 */
function validate_fechaInOneYear(value)
{
    var patron=new RegExp("^([0-9]{1,2})([/])([0-9]{1,2})([/])(19|20)+([0-9]{2})$");
 
    if(value.search(patron)==0)
    {
        values=value.split("/");
        if(isValidDate(values[0],values[1],values[2]))
        {
            var d=new Date();
            var fechaActual=new Date(d.getFullYear(), d.getMonth(), d.getDate(),0,0,0);
            var fechaMasUnAno=new Date(d.getFullYear(), d.getMonth()+12, d.getDate(),0,0,0);
            var fechaUsuario=new Date(values[2],(values[1]-1),values[0],0,0,0);
 
            document.write("<p>FechaActual: "+fechaActual+"</p>");
            document.write("<p>FechaActual mas un año: "+fechaMasUnAno+"</p>");
            document.write("<p>FechaUsuario: "+fechaUsuario+"</p>");
 
            if(fechaUsuario>fechaMasUnAno)
                document.write("error: la fecha es superior");
            else if(fechaUsuario<fechaActual)
                document.write("error: la fecha es inferior");
            else if(fechaUsuario==fechaActual)
                document.write("error: la fecha es hoy");
            else
                document.write("correcto");
        }else
            document.write("error: fecha incorrecta");
    }else
        document.write("error: formato incorrecto dd/mm/yyyy");
}
 
validate_fechaInOneYear("20/10/2013");
 
</script>
</head>
 
<body>
</body>
</html>



Comentarios sobre la versión: Versión 1 (0)


No hay comentarios
 

Comentar la versión: Versión 1

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios

http://lwp-l.com/s2264