Jump to content
Fórum Script Brasil
  • 0

função js valida tudo


Carlos Rocha

Question

Olá pessoal.

Bom Dia

Gostaria de desenvolver uma função em JavaScript crossbrowser que valide todo e qualquer form.

alguém me ajuda a desenvolver?

à medida que as ideias forem aparecendo, por favor postem aqui.

A idéia seria mais ou menos assim:

function validaforms (quantoscamposnoform, nomeform, nomesdoscampos:array)
{
    for (i=1;i<=quantoscamposnoform;i++)
    {
            if (document.nomeform.nomesdoscampos[1].value == "")
        {
            alert("Preencha Campo 1: campo obrigatório !");
            document.nomeform.nomesdoscampos[1].focus();
            return (false);
        }

    }
    
}

Link to comment
Share on other sites

12 answers to this question

Recommended Posts

  • 0

agora estou no trabalho com serviços até o pescoço rsrs

Mas por enquanto ai vai uma dica:

<input type="text" id="nome" validation="true" >
<input type="text" id="ENdereco" validation="true" >
<input type="text" if="Telefone" validation="true" >

Ai você vai pesquisar a respeito no Jquery:

- Como fazer um looping no jquery pegando campos com uma determinada tag

Link to comment
Share on other sites

  • 0

Valeu pela resposta, mas eu preciso saber quais são os campos do form para validar.

Tipo:

O form tem 6 campos,

o campos[0] é um text area e seu name é tal,

o campos[1], é um select e seu name é tal,

o campos {i de laço for para determinar quantos campos tem o form e jogar eles em um array de elementos}

é isso que eu precido mano .

Talves eu não esteje entendendo.

Link to comment
Share on other sites

  • 0

Bom Dia programmers and Designers an Curious (Com eu) hehe

Depois de muita coisa de pensamento profundo dentro da minha cabeça, cheguei a essa função valida quase tudo.

Preciso da ajuda de vocês para implementar mais a função:

<form action="#" method="post" id="meuform" name="meuform">
  <input name="id" name="nome" type="text"  value="" textovalida="o nome" validate="true" /><br />
  <input id="idade" name="idade" type="text"  value=""  maxlength="100" textovalida="a idade" validate="false"><br />
  <select type="select" id="cidade" name="cidade" textovalida="a cidade" validate="true" /><br />
   <option value="">ESCOLHA</option>
   <option value="1">1</option>
   <option value="2">2</option>
   <option value="3">3</option>
  </select><br />
  <input type="button" value="Enviar" onclick="validate('meuform')" validate="false" />
</form>


<script>
// JavaScript Document
function validate(form) 
{ 
    formulario    = document.getElementById(form);
    quantoscampos = formulario.elements.length;

    for (var i = 0; i < quantoscampos; i++) 
    { 
        var campos = formulario.elements[i]; 

        if (  
             (campos.getAttribute("type")=="text")     ||
             (campos.getAttribute("type")=="password")
            )    
            {  completar="Preencha"; }
        if ( 
             (campos.getAttribute("type")=="select")   || 
             (campos.getAttribute("type")=="radio")    ||
             (campos.getAttribute("type")=="checkbox") ||
             (campos.getAttribute("type")=="file")
            ) 
            { completar="Selecione"; }

    
        if (campos.getAttribute("validate") == "true")
        {       
            if (campos.value == "")
            {                
                 alert(completar+" "+campos.getAttribute("textovalida")+": Campo Obrigatório");
                 campos.focus();
                 return false;             
             } 
         } 
    }
    formulario.submit();
}
</script>

Edited by Carlos Rocha
Link to comment
Share on other sites

  • 0

Nesse squema que usei foi só js mesmo.

Nenhum outro artificil foi usado.

pode testar para ver.

Bom pessoal,

Estou fazendo progresso:

Estou dentro de uma pagina js: valida_tudo.js;

Dentro dela, tem a importação de outro arquivo js: valida_email.js.

document.write("<script type='text/javascript' src='valida_email.js'></script>");
Acontece que, quando a função valida_EMAIL(), que esta dentro do arquivo valida_email.js é chamada, toda ele funciona direito, exceto o comando return false e o focus. Qual é o erro?
// JavaScript Document

function valida_EMAIL(campo)
{
        arroba = campo.value.indexOf("@",1);
        ponto =  campo.value.indexOf(".",arroba);

        if(arroba==-1 || ponto==-1 || ponto+3 > campo.value.length)
        {
            alert("Teu e-mail foi digitado incorretamente. Verifique padrão: teuemail@teuprovedor.finalizacao");
            campo.focus();        
            return (false);
        }
        return (true);
}
ainda não consegui Pessoal. olha a situação que estou. Estou dentro de um arquivo js e, faço um if. Caso esse if aconteça, eu chamo uma função que esta dentro de outro arquivo js que é chamado antes de chamar a função. Mas, esta dando que a função, no arquvo importado, não esta recebendo o valor. Onde esta o erro?
if (campos.id == "email") 
{ 
  /*document.write("<script type='text/javascript' src='valida_email.js'></script>");*/
  src='valida_email.js';
  valida_email(campos); 
}
Descobri que se eu carregar o outro arquivo js no incio do arquivo js em questão e fizer só a chamada da função dentro do if funciona normalmente. Porem, se eu chamar o outro arquivo js de dentro do if, ai da erro. O que eu preciso fazer para incluir o arquivo só se eu realmente preisar dele? isso funciona
// JavaScript Document
document.write("<script type='text/javascript' src='valida_email.js'></script>");

function validate(form) 
{ 
    formulario    = document.getElementById(form);
    quantoscampos = formulario.elements.length;

    for (var i = 0; i < quantoscampos; i++) 
    { 
        var campos = formulario.elements[i]; 
.......
                } 
                else if (campos.id == "email") 
                { 
                  return valida_email(campos); 
                } 
            }
         } 
    }
    formulario.submit();
}
isso NÃO funciona
// JavaScript Document
function validate(form) 
{ 
    formulario    = document.getElementById(form);
    quantoscampos = formulario.elements.length;

    for (var i = 0; i < quantoscampos; i++) 
    { 
        var campos = formulario.elements[i]; 
.......
........
.........
    } 
    else if (campos.id == "email") 
    { 
       document.write("<script type='text/javascript' src='valida_email.js'></script>");
       return valida_email(campos); 
    } 
    }
    } 
    }
    formulario.submit();
}

Link to comment
Share on other sites

  • 0

fiote pensava que nem você mas depois que entrei na empresa que estou trabalhando eles me mostraram um outro mundo, se o framework te ajuda e facilita o desenvolvimento porque não usa-lo ?

Carlos se você não estiver com a corda no pescoço me mande uma mensagem privada com o seu MSN que eu te ajudo quando eu tiver um tempinho

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      152.2k
    • Total Posts
      652k
×
×
  • Create New...