Puoi fare cosi

codice:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<title>Untitled</title>
<script language="JavaScript" type="text/javascript">
<!--
function controllaData(day,month,year) {
 //-------- Data limite = data odierna - 31 giorni
 limitDate = new Date();
 limitDate.setDate(limitDate.getDate()-31); 
 
 //-------- Costruzione data da controllare
 ctrlDate = new Date();
 //---- Assegnazione dell'anno
 ctrlDate.setFullYear(year);
 //---- Assegnazione del mese : il mese di gennaio è il mese n°0
 ctrlDate.setMonth(month - 1);
 //---- Assegnazione del giorno
 ctrlDate.setDate(day);
 
 //-------- Conversione di entrambe date al formato ssaammgg unico modo per confrontare due date
 //         esiste forse un altro modo con l'oggetto Date()
 limitDateCYMD = limitDate.getFullYear(year) * 10000 + (limitDate.getMonth()+1) * 100 + limitDate.getDate(); 
 ctrlDateCYMD  = ctrlDate.getFullYear(year)  * 10000 + (ctrlDate.getMonth()+1)  * 100 + ctrlDate.getDate();
 
 // alert(ctrlDateCYMD +'<'+ limitDateCYMD);
 
 //-------- Se la data da controllare è minore della data limite scatta un errore e
 //         la funzione rinvia false
 if ( ctrlDateCYMD < limitDateCYMD) {
  alert('error');
	return false;
 }
 //-------- Se si arriva qui allora la data è corretta quindi la funzione rinvia true
 return true;
}
 controllaData(25,5,2005);
 
 controllaData(12,5,2005);

//-->
</script>

</head>
<body>

</body>
</html>