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

Verificar valores duplicados em form


jgd

Pergunta

Olá Pessoa.

Estou com um problema e não sei bem se é possível fazer isso em JS.

Vamos lá :

Em um fom com vários input´s (type=text, values numericos) com o mesmo nome como evitar que o usuários

digite um valor que já exista em um outros campo input ??

Vou explicar de outra forma:

Tenho o seguite form:

<form name="form2" method="post" action="admin1.asp" onSubmit='return form_simples2(this)'>
1ª <input type="text" size="2" maxlength="2" name="ordem" value="1">
2ª <input type="text" size="2" maxlength="2" name="ordem" value="2">
3ª <input type="text" size="2" maxlength="2" name="ordem" value="3">
4ª <input type="text" size="2" maxlength="2" name="ordem" value="4">
5ª <input type="text" size="2" maxlength="2" name="ordem" value="5">

<input type="image" src='btGravar.jpg' alt="Gravar" id=image1 name=image1>

</form>
Se o usuário digitar por exemplo, no 3ª input o número 1 o form não submete o dados porque já existe o valor 1 no primeiro input. Como varer os demais input´s testando o valor do informado no input focado ? Imagino a seguinte logica :
<script>

//   1ª Pego o id e o valor do input  que disparou o evento ( sei lá via onChange ou onBlur)
//   alguma coisa assim: 

a = document.form2.getElementById("id");
b = document.form2.ordem.value;

//   2ª Listo dos os elementos do form
     erro = "";
     numero = ele.elements.length
     for(i=0; i<numero; i++){


//  3ª pego todos o valores diferentes do que já peguei
       
     if(ele.elements[i].name == "ordem" &&  ele.elements[i].id != a){
    
//   4ª coloco os valores em um array 
//   Não sei fazer....

     }

            
//   5ª testo o valor da variavel "b" com os valores do valores  do array 
//   Não sei fazer....

//  Se exitir da erro.... Caso contrario submete

erro = erro + "Valor informado já existe em outro campo \n"


    if(erro != ""){
        alert("Erros:\n"+erro);
        return false;
    }else{
        return true;
    }
}
}

</script>

Pessoal agradeço qualquer ajuda....

Olha só: Não manjo muito JavaScript, por isso peço que seja bem explicitos.

Obrigado

JGD

Editado por fercosmig
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0

bom uma ideia seria fazer um FOR e adicionando os itens a um array, a cada linha dentro do for (antes de adicionar no array) verifica no array se já existe um valor la, se tiver não adiciona nada e pode guardar uma mensagem de erro pra exibir depois.

desenhando seria:

- inicia for
- cria um array vazio
- adicionar item ao array
- verifica se o item já contem no array
  - sim? então alerta usuario
  - não? então continua o for

desculpa não postar codigo é q está corrido pra mim, mas esta é um jeito.. vamos ver se alguém mais tem alguma outra

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...