Sep 19
Comparando datas com JavaScript
<script language="javascript"> /* Autor.......: Kenneth R. B. Carletto Contato.....: MSN(keno_brow@msn.com) E-Mail(chorao.info@gmail.com) Data........: 20/08/07 Finalidade..: Função que retorna qual das duas datas (passadas como parametro) é maior, baseada no objeto Date e sua funcao getTime(); */ // gE('idElemento'): Simplesmente retorna uma referencia ao objeto 'idElemento' function gE(idElemento){ return document.getElementById(idElemento); } function dataMaior(dt1,dt2){ // dt1 e dt2: Devem ser tipo String, para evitar confusao de tipos if(typeof dt1 != "string" || typeof dt2 != "string"){ alert("As datas devem ser passadas como strings"); return false; } // dt1 e dt2: Alem de strings, dt1 e dt2 devem obedecer aos formatos de data do Brasil (dd/mm/aa ou dd/mm/aaaa) padrao = /d{2}/d{2}/(?:d{2}|d{4})/; if(!padrao.test(dt1) || !padrao.test(dt2)){ alert("Formato de data invalido.nUtilize dd/mm/aa ou dd/mm/aaaa"); return false; } // Instanciamos as datas, para poder usar getTime(); data1 = new Date(dt1); data2 = new Date(dt2); if(!data1 || !data2){ alert("Erro ao criar objetos"); return false; } // milliSegundos1: irá conter a quantidade de segundos corridos desde 1/1/1970 0h ate dt1 milliSegundos1 = data1.getTime(); // milliSegundos2: irá conter a quantidade de segundos corridos desde 1/1/1970 0h ate dt2 milliSegundos2 = data2.getTime(); // Comparando millisegundos para retornar a conclusão de quem é maior que quem... if(milliSegundos1 == milliSegundos2){ alert("As datas são iguais"); return true; } else if(milliSegundos1 > milliSegundos2){ alert("Data 1 maior que data 2"); return true; } else if(milliSegundos1 < milliSegundos2){ alert("Data 2 maior que data 1"); return true; } else return false; } </script> <input name="tdt1" value="10/01/07" type="text" /> <input name="tdt2" value="10/02/07" type="text" /> <input value="Maior" onclick="dataMaior(gE('tdt1').value,gE('tdt2').value)" type="button" />
No Comment
Leave a comment









Muito legal! Parabéns, você se garante em javascript!
Obrigado.
Mas não foi eu quem fiz… peguei em algum lugar e não lembro onde…