Ir para conteúdo

POWERED BY:

Arquivado

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

cakanilo

DT_Termino < DT_Inicio

Recommended Posts

adequei um JS que poem mascara e valida datas, eu quero dizer que a DT_Termino não pode ser menor que a DT_Inicio, segue JS, para análise.

function mascara_data1(DT_Inicio){ 
var mydata = ''; 
mydata = mydata + DT_Inicio; 
if (mydata.length == 2){ 
mydata = mydata + '/'; 
document.forms[0].DT_Inicio.value = mydata; 
} 
if (mydata.length == 5){ 
mydata = mydata + '/'; 
document.forms[0].DT_Inicio.value = mydata; 
} 
if (mydata.length == 10){ 
verifica_data(); 
} 
} 

function verifica_data () { 

dia = (document.forms[0].DT_Inicio.value.substring(0,2)); 
mes = (document.forms[0].DT_Inicio.value.substring(3,5)); 
ano = (document.forms[0].DT_Inicio.value.substring(6,10)); 

situacao = ""; 
// verifica o dia valido para cada mes 
if ((dia < 01)||(dia < 01 || dia > 30) && ( mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
situacao = "falsa"; 
} 

// verifica se o mes e valido 
if (mes < 01 || mes > 12 ) { 
situacao = "falsa"; 
} 

// verifica se e ano bissexto 
if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
situacao = "falsa"; 
} 

if (document.forms[0].DT_Inicio.value == "") { 
situacao = "falsa"; 
} 

if (situacao == "falsa") { 
alert("Data inválida, informe outra data!"); 
document.forms[0].DT_Inicio.focus(); 
} 
} 

function mascara_hora(hora){ 
var myhora = ''; 
myhora = myhora + hora; 
if (myhora.length == 2){ 
myhora = myhora + ':'; 
document.forms[0].hora.value = myhora; 
} 
if (myhora.length == 5){ 
verifica_hora(); 
} 
} 

function verifica_hora(){ 
hrs = (document.forms[0].hora.value.substring(0,2)); 
min = (document.forms[0].hora.value.substring(3,5)); 

alert('hrs '+ hrs); 
alert('min '+ min); 

situacao = ""; 
// verifica data e hora 
if ((hrs < 00 ) || (hrs > 23) || ( min < 00) ||( min > 59)){ 
situacao = "falsa"; 
} 

if (document.forms[0].hora.value == "") { 
situacao = "falsa"; 
} 

if (situacao == "falsa") { 
alert("Hora inválida!"); 
document.forms[0].hora.focus(); 
} 
} 


function mascara_data2(DT_Termino){ 
var mydata = ''; 
mydata = mydata + DT_Termino; 
if (mydata.length == 2){ 
mydata = mydata + '/'; 
document.forms[0].DT_Termino.value = mydata; 
} 
if (mydata.length == 5){ 
mydata = mydata + '/'; 
document.forms[0].DT_Termino.value = mydata; 
} 
if (mydata.length == 10){ 
verifica_data(); 
} 

function verifica_data () { 

dia = (document.forms[0].DT_Termino.value.substring(0,2)); 
mes = (document.forms[0].DT_Termino.value.substring(3,5)); 
ano = (document.forms[0].DT_Termino.value.substring(6,10)); 

situacao = ""; 
// verifica o dia valido para cada mes 
if ((dia < 01)||(dia < 01 || dia > 30) && ( mes == 04 || mes == 06 || mes == 09 || mes == 11 ) || dia > 31) { 
situacao = "falsa"; 
} 

// verifica se o mes e valido 
if (mes < 01 || mes > 12 ) { 
situacao = "falsa"; 
} 

// verifica se e ano bissexto 
if (mes == 2 && ( dia < 01 || dia > 29 || ( dia > 28 && (parseInt(ano / 4) != ano / 4)))) { 
situacao = "falsa"; 
} 

if (document.forms[0].DT_Termino.value == "") { 
situacao = "falsa"; 
} 

if (situacao == "falsa") { 
alert("Data inválida, informe outra data!"); 
document.forms[0].DT_Termino.focus(); 


}
} 

function mascara_hora(hora){ 
var myhora = ''; 
myhora = myhora + hora; 
if (myhora.length == 2){ 
myhora = myhora + ':'; 
document.forms[0].hora.value = myhora; 
} 
if (myhora.length == 5){ 
verifica_hora(); 
} 
} 

function verifica_hora(){ 
hrs = (document.forms[0].hora.value.substring(0,2)); 
min = (document.forms[0].hora.value.substring(3,5)); 

alert('hrs '+ hrs); 
alert('min '+ min); 

situacao = ""; 
// verifica data e hora 
if ((hrs < 00 ) || (hrs > 23) || ( min < 00) ||( min > 59)){ 
situacao = "falsa"; 
} 

if (document.forms[0].hora.value == "") { 
situacao = "falsa"; 
} 

if (situacao == "falsa") { 
alert("Hora inválida!"); 
document.forms[0].hora.focus(); 
} 
} 
}

Até aqui funciona certinho, eu criei essa função para atender a necessidade mas não tem dado certo, teria como da uma olhadinha aí, pois sou iniciante. Desde de já agradeço.?[]

function verificadatas(DT_Inicio and DT_Termino){ 
var mydata1 = ''; 
mydata1 = mydata1 + DT_Inicio; 
var mydata2 = ''; 
mydata2 = mydata2 + DT_Termino;
if (mydata2 < mydata1){
alert("Data inválida, informe outra data!"); 

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tópico movido

 

Origem: Programação » PHP

Destino: Desenvolvimento » Javascript / DHTML

Só avaliei sua função...sem lógica pra caramba ela.Eis:

function verificadatas(DT_Inicio,DT_Termino /*=parametros numericos*/){
if (DT_Termino < DT_Inicio){
alert("Data inválida, informe outra data!"); 
}
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu posso colocar 2 onkeyup="mascara_data2(this.value)" maxlength="10" dentro desse <input name="DT_Termino" type="text" id="DT_Termino" size="10" onkeyup="mascara_data2(this.value)" maxlength="10" /> pois um averigua se a data esta correta e a outra averiguaria se a DT_Termino é menor que DT_Inicio.

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.