Tenho o seguinte script, que restringe algumas teclas, em um iframe:
<script type="text/javascript"> var doc; function load() { var ifr = document.getElementById("desc_problema"); doc = ifr.contentDocument || ifr.contentWindow.document if(doc.addEventListener){ doc.addEventListener('keypress', sem_acento, false);} else { doc.attachEvent('onkeypress', sem_acento, false); addEventListener }
}
function sem_acento(e,args) { if (document.all){var evt=event.keyCode;} else {var evt = e.charCode || e.which;} var valid_chars = '0123456789abcdefghijlmnopqrstuvxzwykABCDEFGHIJLMNOPQRSTUVXZWYK/+\()*#}{[]} =%!$@ãõê^~°ºÕâÂêÊôÔáéíóúÁÉÍÓÚàÀçÇ?><,.;-_'+args; var chr= String.fromCharCode(evt); if (valid_chars.indexOf(chr)>-1 ){return true;} // para permitir teclas como <BACKSPACE> adicionamos uma permissão para // códigos de tecla menores que 09 por exemplo (geralmente uso menores que 20) if (valid_chars.indexOf(chr)>-1 || evt < 9){return true;} alert("Tecla não permitida. Não usar aspas simples ou dupla."); return false; } </script>
Pergunta
renatolmb
Boa tarde senhores, preciso de uma ajuda urgente:
Tenho o seguinte script, que restringe algumas teclas, em um iframe:
<script type="text/javascript">
var doc;
function load()
{
var ifr = document.getElementById("desc_problema");
doc = ifr.contentDocument || ifr.contentWindow.document
if(doc.addEventListener){
doc.addEventListener('keypress', sem_acento, false);}
else {
doc.attachEvent('onkeypress', sem_acento, false); addEventListener
}
}
function sem_acento(e,args)
{ if (document.all){var evt=event.keyCode;}
else
{var evt = e.charCode || e.which;}
var valid_chars = '0123456789abcdefghijlmnopqrstuvxzwykABCDEFGHIJLMNOPQRSTUVXZWYK/+\()*#}{[]} =%!$@ãõê^~°ºÕâÂêÊôÔáéíóúÁÉÍÓÚàÀçÇ?><,.;-_'+args;
var chr= String.fromCharCode(evt);
if (valid_chars.indexOf(chr)>-1 ){return true;}
// para permitir teclas como <BACKSPACE> adicionamos uma permissão para
// códigos de tecla menores que 09 por exemplo (geralmente uso menores que 20)
if (valid_chars.indexOf(chr)>-1 || evt < 9){return true;}
alert("Tecla não permitida. Não usar aspas simples ou dupla."); return false;
}
</script>
<iframe id="desc_problema" frameborder="0" width="100%" height="90px" allowtransparency="true" scrolling="auto"></iframe>
<script>
window.onload = load;
</script>
Acontece que chega até o alert, mostra a mensagem na tela, porém o caractere que devia ser bloqueado aparece no iframe.
quando faço direto em um textarea sem iframe funciona normalmente
<textarea id="ta_justificativa" name="ta_justificativa" cols="55" rows="2" onkeypress="return sem_acento(event);"
O que estou fazendo de errado??
Link para o comentário
Compartilhar em outros sites
0 respostass 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.