/**
	* Verifica se o per�odo selecionado � inferior ao limite
	* @param int Qt m�xim de dias para o per�odo
	*/
	function validaPeriodo(inicio,fim,max_dias){
		try {
					
			// referenciando os objetos
	  		var dataI = inicio.match(/^(\d{1,2})\D(\d{1,2})\D(\d{2}|\d{4})$/);
	  		// validando a data 
	  		if (!parseDate(dataI[1],dataI[2],dataI[3])){
	  			alert('A data inicial � inv�lida!');
	  			return false;
	  		}                        
			var di = new Date(dataI[3],dataI[2]-1,dataI[1],0,0,0,0);
			var dataF = fim.match(/^(\d{1,2})\D(\d{1,2})\D(\d{2}|\d{4})$/);  		
	  		if (!parseDate(dataF[1],dataF[2],dataF[3])){
	  			alert('A data final � inv�lida!');
	  			return false;
	  		}
	  		var df = new Date(dataF[3],dataF[2]-1,dataF[1],0,0,0,0);
			if(df-di > parseInt(max_dias)*24*3600*1000){
				var dmin = new Date(dataF[3],dataF[2]-1,dataF[1]-parseInt(p)+1,0,0,0,0);
				$('dataI').value=dmin.getDate()+'/'+(dmin.getMonth()+1)+'/'+dmin.getFullYear();
				alert('O per�odo m�ximo para pesquisas � de '+parseInt(max_dias)+' dias!');
				return false;
			}
			
		} catch (e) {
			alert('Uma ou mais datas passadas s�o inv�lidas');
			return false;			
		}
		return true;
	}

     /**
     * Valida uma data passada
     * @param int dia
     * @param int mes
     * @param int ano
     * @return Bool TRUE em caso de data v�lida, do contr�rio FALSE
     */
     function parseDate(dia,mes,ano){
     	var dateRegExp =/^(19|20)\d\d[- \/\.](0?[1-9]|1[012])[- \/\.](0?[1-9]|[12][0-9]|3[01])$/;
        if (!dateRegExp.test(ano+"/"+mes+"/"+dia)) return false; // formato inv�lido
        if (dia == 31 && ( mes.indexOf('469')>0 || mes == 11) ) {
            return false; // dia 31 de um mes de 30 dias
        }else if (dia >= 30 && mes == 2) {
            return false; // mais de 29 dias em fevereiro
        }else if (mes == 2 && dia == 29 && !(ano % 4 == 0 && (ano % 100 != 0 || ano % 400 == 0))) {
            return false; // dia 29 de fevereiro de um ano nao bissexto
        }else {
            return true; // Data v�lida
        }
    }

Exemplo de uso
Validando um per�odo de 120 dias

validaPeriodo('01/01/2008','04/04/2008',120); // retornar� falso