Ir para conteúdo

POWERED BY:

Arquivado

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

lumiere

Eu tenho 3 funcões para Data (Formatar,ValidarNumero e Validar a data)

Recommended Posts

Pessoal, eu tenho aqui algumas funções para Validação,Formatação e Verificar se é só numeros...Porém, quando utilizo elas o focus não funciona, o que pode ser?Segue abaixo as funções:function FormataData1(Campo, teclapres, i){ var tecla = teclapres; var vr = new String(Campo.value); vr = vr.replace("/", ""); vr = vr.replace("/", ""); tam = vr.length + 1; if (tecla != 9 && tecla != 8){ if (tam > 2 && tam < 5) Campo.value = vr.substr(0, 2) + '/' + vr.substr(2, tam);Campo.focus(); if (tam >= 5 && tam <=10) Campo.value = vr.substr(0,2) + '/' + vr.substr(2,2) + '/' + vr.substr(4,4);Campo.focus(); } return ValidNum(Campo, eval("form.date" + i)); return false; //eval ("form.date" + teclapres + ".focus();"); Campo.focus(); }******************function ValidNum(e,n){ if (document.all) // Internet Explorer var tecla = event.keyCode; else if(document.layers) // Nestcape var tecla = e.which; if ((tecla ==46) || (tecla == 44) || (tecla > 46 && tecla < 58 )) // numeros de 0 a 9 , e . e / return true; else{ if ((tecla == 13)||(tecla==9)){ n.focus(); return false;} if (tecla != 8) // backspace {event.keyCode = 0; alert ("Por favor, digite somente números!"); return false; }else return true; }} **********************function verifica_date_obrig (data, i) { var atual = new Date(); var dt_atual = atual.getDate() + "/" + (atual.getMonth()+1) + "/" + atual.getFullYear(); if(data.length == 0){ alert('O campo Data é obrigatório'); eval ("form.date" + i + ".focus();"); return false; } if(data.length >= 1){ if(data.length != 10){ alert('Data incompleta: dd/mm/aaaa'); eval ("form.date" + i + ".focus();"); return false; } } if (!verifica_data(data)){ alert('Data inválida!'); eval ("form.date" + i + ".focus();"); return false; } if (data.substring(0,2) > atual.getDate()){ if (data.substring(3,5) >= (atual.getMonth()+1)){ if (data.substring(6,10) >= atual.getFullYear()) { alert("Data inválida. Data maior que a data atual"); eval ("form.date" + i + ".focus();"); return false; } } } if (data.substring(6,10) <= "1910"){ alert("Data inválida. Menor que 1910"); eval ("form.date" + i + ".focus();"); return false; } }Estou chamando as funções assim: <cfinput type="text" name="date#i#" " value="#s.data#" passthrough = "onKeyPress='FormataData1(form.date#i#, #i#); ' onBlur= 'return verifica_date_obrig(form.date#i#.value, #i#);' ">

Compartilhar este post


Link para o post
Compartilhar em outros sites

dude posta o html resultante de seu coldFusion por favor pq ai podemos testar o html e ver oq q pode estar acontecendo!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Espero que consiga entender...rstentei pegar o necessário...<html><head> <title>:: Form Teste ::</title> <script type="text/javascript" src="/CFIDE/scripts/cfform.js"></script> <script type="text/javascript" src="/CFIDE/scripts/masks.js"></script> <script type="text/javascript"></head><script language="JavaScript"> function ValidNum(e,n){ if (document.all) // Internet Explorer var tecla = event.keyCode; else if(document.layers) // Nestcape var tecla = e.which; if ((tecla ==46) || (tecla == 44) || (tecla > 46 && tecla < 58 )) // numeros de 0 a 9 , e . e / return true; else{ if ((tecla == 13)||(tecla==9)){ n.focus(); return false;} if (tecla != 8) // backspace {event.keyCode = 0; alert ("Por favor, digite somente números!"); return false; }else return true; }} function FormataData1(Campo, teclapres, i){ var tecla = teclapres; var vr = new String(Campo.value); vr = vr.replace("/", ""); vr = vr.replace("/", ""); tam = vr.length + 1; if (tecla != 9 && tecla != 8){ if (tam > 2 && tam < 5) Campo.value = vr.substr(0, 2) + '/' + vr.substr(2, tam); if (tam >= 5 && tam <=10) Campo.value = vr.substr(0,2) + '/' + vr.substr(2,2) + '/' + vr.substr(4,4); Campo.focus(); } return ValidNum(Campo, eval("form.data" + i)); //if (ValidNum(Campo, eval("form.data" + i))== true);{alert ("Teste!"); } //if(SoNumeros(teclapres)==false){alert ("teste" + teclapres); eval ("form.data" + teclapres + ".focus();");} return false; eval ("form.data" + teclapres + ".focus();"); Campo.focus(); } function verifica_date_obrig (data, i) { var atual = new Date(); var dt_atual = atual.getDate() + "/" + (atual.getMonth()+1) + "/" + atual.getFullYear(); if(data.length == 0){ alert('O campo Data é obrigatório'); eval ("form.data" + i + ".focus();"); return false; } if(data.length >= 1){ if(data.length != 10){ alert('Data incompleta: dd/mm/aaaa'); eval ("form.data" + i + ".focus();"); return false; } } if (!verifica_data(data)){ alert('Data inválida!'); eval ("form.data" + i + ".focus();"); return false; } if (data.substring(0,2) > atual.getDate()){ if (data.substring(3,5) >= (atual.getMonth()+1)){ if (data.substring(6,10) >= atual.getFullYear()) { alert("Data inválida. Data maior que a data atual"); eval ("form.data" + i + ".focus();"); return false; } } } if (data.substring(6,10) <= "1910"){ alert("Data inválida. Menor que 1910"); eval ("form.data" + i + ".focus();"); return false; } } </script><body leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" marginwidth="0" marginheight="0" ><form name="form" action="form.cfm?acao=salvar&id=0" method="POST" onsubmit="return _CF_checkform(this)"> <table border="0" width="100%" cellspacing="2" cellpadding="2" class="border"><tr><td> Data (*) <br> <td width="700"><input name="data1223" id="data1223" type="text" maxlength="10" size="15" class="maiuscula" tabindex="19.0" onKeyPress ='return FormataData1(esfera.data1223, 1223);' onBlur= 'return verifica_date_obrig(esfera.data1223.value, 223);' /> dd/mm/aaaa  <span class="exclama"><font size="-2"><em>utilize apenas números</em></font></span></td></table><br> <table> <tr> <td> Exemplos:<input type="Checkbox" name="campcheck1386" value="1386 " tabindex="20" > </td></tr> </form> <img src="btn_bw.gif" alt="" name="btn_okh" id="bt_okh" width="80" height="18" onclick="_submit_form(form);" tabindex="22"> </body>

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.