validar fecha en formato aaaa-mm-dd

saber
18 de Agosto del 2008
por fas ayuda para poder validar la fecha aaaa-mm-dd ya hice una validacion pero la inserta aaaa/mm/dd y es que en mi base de datos la da por defaul
si le cambio / no resulta mi codigo es este

if (formulario.FechaInicio.value == "")
{ alert("Por favor ingrese la Fecha ");
formulario.FechaInicio .focus();
return (false);
}
//fechas, formato aaaa/mm/dd o aa/m/d
var er_mes31dias = /^(1999|20[0-1][0-9]|2020)/(1|01|3|03|5|05|7|07|8|08|10|12)/([1-3]0|[0-2][1-9]|31|[0-9])$/
var er_mes30dias = /^(4|04|6|06|9|09|11)/(4|04|6|06|9|09|11)/([1-3]0|[0-2][1-9]|[0-9])$/
var er_mes28dias = /^(1999|200[1-3]|200[5-7]|2009|201[0-1]|201[3-5]|201[7-9])/(02|2)/([1-2]0|[0-2][1-8]|[0-1]9|[0-9])$/
var er_mes29dias = /^(2000|2004|2008|2012|2016|2020)/(02|2)/([1-2]0|[0-2][1-9]|[0-9])$/

//comprueba la fecha segun calendario (hasta el 2020, ojo)
if (!(er_mes31dias.test(formulario.FechaInicio.value) ||
er_mes30dias.test(formulario.FechaInicio.value) ||
er_mes29dias.test(formulario.FechaInicio.value) ||
er_mes28dias.test(formulario.FechaInicio.value))) {
alert('Contenido del campo FECHA no válido.')
return false
}

o cual es mi error por fas ayudaaaaaaaaaaaaaa
salu2

duckrguez
18 de Agosto del 2008
Por si todavia lo necesitas o quieres salir de dudas. el codigo que esta como comentario esta bien solo que a mi no me sirvio pero el error tuyo es solo cambiar las diagonales / por - dentro de las concatenaciones (nose si asi se les llame)
er_mes31dias
er_mes30dias
er_mes28dias
er_mes29dias

checalo con el que tienes.


function fecha()
{

/*if (formulario.FechaInicio.value == "")
{ alert("Por favor ingrese la Fecha");
formulario.FechaInicio .focus();
return (false);
}*/
//fechas, formato aaaa/mm/dd o aa/m/d
var er_mes31dias = /^(1999|20[0-1][0-9]|2020)-(1|01|3|03|5|05|7|07|8|08|10|12)-([1-3]0|[0-2][1-9]|31|[0-9])$/
var er_mes30dias = /^(4|04|6|06|9|09|11)-(4|04|6|06|9|09|11)-([1-3]0|[0-2][1-9]|[0-9])$/
var er_mes28dias = /^(1999|200[1-3]|200[5-7]|2009|201[0-1]|201[3-5]|201[7-9])-(02|2)-([1-2]0|[0-2][1-8]|[0-1]9|[0-9])$/
var er_mes29dias = /^(2000|2004|2008|2012|2016|2020)-(02|2)-([1-2]0|[0-2][1-9]|[0-9])$/

//comprueba la fecha segun calendario (hasta el 2020, ojo)
if (!(er_mes31dias.test(document.formsg1a.FechaInicio.value) ||
er_mes30dias.test(document.formsg1a.FechaInicio.value) ||
er_mes29dias.test(document.formsg1a.FechaInicio.value) ||
er_mes28dias.test(document.formsg1a.FechaInicio.value))) {
alert("Contenido del campo FECHA no válido.")
return false
}


}

juan carlos
18 de Agosto del 2008
y como pòndria eso en un campo de texto atraves de un boton