Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

valmello

[Resolvido] Limitar data

Recommended Posts

Galera,

 

Bom dia!

 

Estou precisando de um código que faça o seguinte.

Permitir digitar data que seja compreendida no intervalo de 15 dias após e até noventa dias da data atual.

Por exemplo, para não ter dúvidas:

Hoje dia 17/07/2008, então: Só deve ser permitido digitar no campo a data a paritr de 02/08/2008 ( que seria 15 dias da data de hoje ) e até 17/10/2008 ( que seria 90 dias da data de hoje ).

Ah! preciso que além desta condição que o campo valide a data.

Para a validação da data estou usando o código abaixo, se alguém puder implementar esta condição nele ficaria melhor.

 

Alguém pode dar um help?

 

//valida data

function VerificaData(digData)

{

var bissexto = 0;

var data = digData;

var tam = data.length;

if (tam == 10)

{

var dia = data.substr(0,2)

var mes = data.substr(3,2)

var ano = data.substr(6,4)

if ((ano > 1900)||(ano < 2100))

{

switch (mes)

{

case '01':

case '03':

case '05':

case '07':

case '08':

case '10':

case '12':

if (dia <= 31)

{

return true;

}

break

 

case '04':

case '06':

case '09':

case '11':

if (dia <= 30)

{

return true;

}

break

case '02':

/* Validando ano Bissexto / fevereiro / dia */

if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0))

{

bissexto = 1;

}

if ((bissexto == 1) && (dia <= 29))

{

return true;

}

if ((bissexto != 1) && (dia <= 28))

{

return true;

}

break

}

}

}

alert("A Data "+data+" é inválida!");

document.forms[0].vencimento.focus();

return false;

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

eae ta ai....

//valida data
function VerificaData(digData)
{
	var bissexto = 0;
	var data = digData;
	var tam = data.length;
	if (tam == 10)
	{
	var dia = data.substr(0,2)
	var mes = data.substr(3,2)
	var ano = data.substr(6,4)
	if ((ano > 1900)||(ano < 2100))
	{
		switch (mes)
		{
			case '01':
			case '03':
			case '05':
			case '07':
			case '08':
			case '10':
		case '12':
			if (dia <= 31)
			{
				return true;
			}
			break

		case '04':
		case '06':
		case '09':
		case '11':
			if (dia <= 30)
			{
				return true;
			}
		break
		case '02':
		/* Validando ano Bissexto / fevereiro / dia */
			if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0))
			{
				bissexto = 1;
			}
			if ((bissexto == 1) && (dia <= 29))
			{
				return true;
			}
			if ((bissexto != 1) && (dia <= 28))
			{
				return true;
			}
				break
			}
		}
	}
	return false;
} 



//data - formato dd/mm/yyyy
function limite(data){

	var dataLimite = new  Date();
	dataLimite.setDate(dataLimite.getDate() + 15);
	
	var spliData = data.split("/");

	var date_ = new Date();
	date_.setDate(spliData[0]);
	date_.setMonth(spliData[1] - 1);
	date_.setFullYear(spliData[2]);
	if(VerificaData(data)){
		if(date_.getTime() >= dataLimite.getTime()){
			alert("ok")
		}else{
			alert("Deve digitar uma data apartir de: " + dataLimite.getDate() + "/" + (dataLimite.getMonth() + 1) + "/" + dataLimite.getFullYear());
		}
	}else{
		alert("Data inválida");
	}
									
}
limite('17/07/2008');

 

t+

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.