Ir para conteúdo
Fórum Script Brasil
  • 0

Erro no meu codigo


homosapiens

Pergunta

Ola, escrevi um codigo em javascript a fim de comparar os caracteres digitados num dado formulario, e assim coibir que o usuario digite valores não desejados como cifrao "$", aspas duplas", aspas simples ', entre outros; porem o não vem dando resultado e não esta aparecendo nenhuma mensagem de erro, se alguém souber consertar ou indicar onde estou errando agradeço:

<html>
<head>
&lt;script type="text/javascript">
 function empty(v){
  if (v==null || v==0 || v=='' || v==""){ 
   return true
  } else {
   return false
  }
 }

 function Caracter(campo, frm) {
  var chars=new Array("a","A","B","b","c","C","d","D","e","E","f","F","g","G","h","H","i","I","j","J","k","K","l","L","m","M","n","N","o","O","P","p","q","Q","r","R","s","S","t","T","u","U","v","V","x","X","y","Y","z","Z","-",",","á","Á","à","À","â","Â","ã","Ã","ç","Ç","é","É","ê","Ê","í","Í","ó","Ó","ô","Ô","õ","Õ","ú","Ú"," ",".");
   var tamC=chars.length;
   var tamV=campo.length;
   var saida=true;
   var comp="";
   for(i=0; i<tamV; i++) {
    comp=frm.campo.substr(i,1);
    for(j=1; j<=tamC; j++) {     
     if(comp==chars[j]) {
      saida=true;
      exit;
     } else {
      saida=false;
     }    
    }
    if(saida==false) {
     exit;
    }
   }
   
  if(saida==false) {
   frm.info.value="R";
   frm.campo.value="Reprovado, digite novamente...";
   frm.campo.focus();
  } else {
   frm.info.value="Ok";
  }
 }
</script>
<title>Mascaras</title>
</head>
<body class=xXxbody>
<form method=post action=# name=frm1>
 Cliente:<input type=text name=cliente value="" maxlength=60 onblur="Caracter(cliente,frm1);"><input type=text name=info value="" disabled size=1>
 <br>
 Rua:<input type=text name=rua value="" onblur="Caracter(rua,frm1);">
</form>
</body>
</html>

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

Vamos lá. Vamos por parte. Fiz algumas observações no seu cod. Tire minhas dúvidas para que possamos continuar trabalhando.

<html>

<head>

<script type="text/javascript">

//você escreveu essa função mas não a usou em nada

function empty(v)
{
    //Comece a comentar algumas coisas para ficar mais claro para quem está analisando os seus códigos

    if (v==null || v==0 || v=='' || v=="")

        return true; //quando o return é acionado nenhuma linha abaixo é mais executada, portanto não precisa do else.

    return false;

}


//procure trabalhar com ids, e com o método do objeto document, getElementById('id'). Assim terá acesso a todas as propriedades do elemento passado como parâmetro

function caracter(id)
{
    var frmObj = document.getElementById(id);

    var chars = new Array("a","A","B","b","c","C","d","D","e","E","f","F","g","G","h","H","i","I","j","J","k","K","l","L","m","M","n","N","o","O","P","p","q","Q","r","R","s","S","t","T","u","U","v","V","x","X","y","Y","z","Z","-",",","á","Á","à","À","â","Â","ã","Ã","ç","Ç","é","É","ê","Ê","í","Í","ó","Ó","ô","Ô","õ","Õ","ú","Ú"," ","."); //

    var tamC=chars.length; //o que são C e V?

    var tamV=campo.length;

    var saida=true;

    var comp="";

    for(i=0; i < tamV; i++) {

        comp=frm.campo.substr(i,1); //para que serve esta linha?
    

    for(i=1; i<=tamC; i++)
    {

        if(comp==chars[i]){

            saida=true;

            exit; //você quis dizer "break" para sair do loop?

        } else {

            saida=false;

        }     

     }

     if(saida==false){

        exit;

     }

    }

    

    if(saida==false) {

        frm.info.value="R";

        frm.campo.value="Reprovado, digite novamente...";

        frm.campo.focus();

    } else {

        frm.info.value="Ok";

    }

}

</script>

<title>Mascaras</title>

</head>

<body class=xXxbody>

<form method=post action=# name="frm1"> <!--nomeou o formulário como frm, e depois tentou manipulá-lo como frm1-->

Cliente:
    <input
        type="text"
        id="cliente"
        name="cliente"
        value=""
        maxlength="60"
        onblur="caracter('cliente', 'frm1');"
    >
    <input
        type="text"
        id="info"
        name="info"
        value=""
        disabled="disabled"
        size="1"
    >

<br>

Rua:
    <input
        type="text"
        id="rua"
        name="rua"
        value=""
        onblur="caracter('rua','frm1');"
    >

</form>

</body>

</html>

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...