sea - validar fecha javascript dd mm yyyy
Determinación de la igualdad de fecha en Javascript (3)
Necesito averiguar si dos fechas que el usuario selecciona son las mismas en Javascript. Las fechas se pasan a esta función en una cadena ("xx / xx / xxxx"). Esa es toda la granularidad que necesito.
Aquí está mi código:
var valid = true;
var d1 = new Date($(''#datein'').val());
var d2 = new Date($(''#dateout'').val());
alert(d1+"/n"+d2);
if(d1 > d2) {
alert("Your check out date must be after your check in date.");
valid = false;
} else if(d1 == d2) {
alert("You cannot check out on the same day you check in.");
valid = false;
}
La alerta de javascript después de convertir las fechas en objetos se ve así:
Mar 25 de enero de 2011 00:00:00 GMT-0800 (hora estándar del Pacífico)
Mar 25 de enero de 2011 00:00:00 GMT-0800 (hora estándar del Pacífico)
La prueba para determinar si la fecha 1 es mayor que la fecha 2 funciona. Pero el uso de los operadores == o === no cambia de válido a falso.
Si no quiere llamar a getTime()
simplemente intente esto:
(a >= b && a <= b)
Use el método getTime()
. Verificará el valor numérico de la fecha y funcionará tanto para las comprobaciones mayores que / menores que para las verificaciones iguales.
EDITAR:
if (d1.getTime() === d2.getTime())
var d1 = new Date($(''#datein'').val());
var d2 = new Date($(''#dateout'').val());
usa dos formas sencillas para verificar la igualdad
-
if( d1.toString() === d2.toString())
-
if( +d1 === +d2)