Martinsrj Postado Abril 29, 2010 Denunciar Share Postado Abril 29, 2010 (editado) Olá pessoal, boa tarde!Estou com dificuldade em utiliza um função de formatação de data no evento onkeypress. Consigo fazer funcionar estatico dessa forma:<label id="txtDtDespesa0" for="txtDtDespesa0" class="label">Data da Despesa</label><br /> <input class="input" type="text" lang="1" title="" maxlength="10" size="10" name="txtDtDespesa0" id="txtDtDespesa0" value="" onFocus="mudarCorCampo(this,'white')" onkeypress="return(FormatarData(this,event))" /><br /> Porem necessito que funcione nesse codigo também: var textDtDespesa = document.createTextNode("Data Despesa"); var fontDtDespesa = document.createElement("label"); var quebraDtDespesa = document.createElement('BR'); var el = document.createElement('input'); var quebra = document.createElement('BR'); el.type = 'text'; el.name = 'txtDtDespesa' + var_txtCont.value; el.id = 'txtDtDespesa' + var_txtCont.value; el.size = 10; //el.onkeypress = keyPressTest; el.onkeypress = FormatarData; fontDtDespesa.appendChild(textDtDespesa); cellRightSel.appendChild(fontDtDespesa); cellRightSel.appendChild(quebraDtDespesa); cellRightSel.appendChild(el); cellRightSel.appendChild(quebra); Abaixo é a função: // Script para formatar datas function FormatarData(campo,e) { var cod=0; if(document.all) { cod=event.keyCode; } else { cod=e.which; } if(cod == 08 || cod == 0) return; if (cod < 48 || cod > 57) { if ((cod < 45 || cod > 57) && (cod != 13) ) alert("Digite somente Caracteres Numéricos!"); cod=0; campo.focus(); return false; } tam=campo.value.length; if(tam > 9) return false; var caract = String.fromCharCode(cod); if(tam == 2 || tam == 5) { campo.value+="/"+caract; return false; } campo.value+=caract; return false; }Onde que eu estou errando?Abraços.Acabei de colocar no site do Pastebin o código completo:http://pastebin.com/vEP5hngh Editado Abril 29, 2010 por Martinsrj Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Rodrigo26 Postado Maio 4, 2010 Denunciar Share Postado Maio 4, 2010 /*Cria uma função de nome mascara, onde o primeiro argumento passado é um dos objetos input O segundo é especificando o tipo de método no qual será tratado*/ function mascara(o,f){ v_obj=o; v_fun=f; setTimeout("execmascara()",1); } function execmascara(){ /*Pegue o valor do objeto e atribua o resultado da função v_fun; cujo o conteúdo da mesma é a função que foi referida e que será utilizada para tratar dos dados*/ v_obj.value=v_fun(v_obj.value); } function vData(v){ //Remove tudo o que não é dígito v=v.replace(/\D/g,""); v=v.replace(/(\d{2})(\d)/,"$1/$2"); v=v.replace(/(\d{2})(\d)/,"$1/$2"); //retorne o resultado return v; } //APLICAÇÃO NO HTML|XHTML //<input id="data" onkeypress="mascara(this,vData)" maxlength="10" /> Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Martinsrj
Olá pessoal, boa tarde!
Estou com dificuldade em utiliza um função de formatação de data no evento onkeypress.
Consigo fazer funcionar estatico dessa forma:
Porem necessito que funcione nesse codigo também: Abaixo é a função:Onde que eu estou errando?
Abraços.
Acabei de colocar no site do Pastebin o código completo:
http://pastebin.com/vEP5hngh
Editado por MartinsrjLink para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.