Salve a tuti, non riesco a fare un banale controllo data.
Mi dà sempre l'alert di "data non corretta" nonostante non lo sia.
Ecco lo scriptino:
codice:
function verificaData(anno, mese, giorno) {
var d = new Date(anno, mese-1, giorno);
return (d.getFullYear()==anno && d.getMonth()==(mese-1) && d.getDate()==giorno);
}
var gg = document.frmRegister.DOBday.value;
var mm = document.frmRegister.DOBmonth.value;
var aa = document.frmRegister.DOByear.value;
if (gg == 0){
errorMsg += "\n\t<% = strTxtErrorNascitaGiorno %>";
}
if (mm == 0){
errorMsg += "\n\t<% = strTxtErrorNascitaMese %>";
}
if (aa == 0){
errorMsg += "\n\t<% = strTxtErrorNascitaAnno %>";
}
if(!verificaData(gg,mm,aa)) {
errorMsg += "\n\t<% = strTxtErrorNascitaData %>";
}
Nella variabile strTxtErrorNascitaData (l'ultima) appare sempre l'errore. Ovviamente nel caso in cui i campi formassero una data formalmente corretta non dovrebbe apparire l'alert.
I tre valori per giorno, mese e anno arrivano da un form con tre campi select.
Grazie.
Roby