Dae galera… estou desenvolvendo um sistema web utilizando jsp, Servles, ajax… o básico mesmo… eu queria saber como que vcs fazem o controle por exemplo em um formulário… dae o cara clica no submit e depois clica de novo… nesse caso será cadastrado dois registros… , a pergunta é… como evitar que o usuário submeta o formulário duas vezes??
Abraço!
[RESOLVIDO]Evitando mais de um submit!
7 Respostas
Faz uma função em javascript que desabilite o botão enviar do seu form quando ele clicar…
Tem duas formas de formas de fazer (devem haver mais):
1 - Desabilitar o botão qndo o usuário clicar.
2 - Colocar na sessao do usuário um atributo e passar para o formulario, qndo o formulario for submetido vc confere esse atributo e muda-o. Caso seja submetido duas vezes o mesmo formulario esses atributos serao diferentes( formulario e sessao) entao voce sabera q o formulario nao corresponde ao mais atualizado, ou seja, ja foi recebido.
ver: synchronizer token.
[]´s
Humberto Lima
Quando o cara fazer o submit, se tudo estiver ok, vc o redireciona para uma tela de sucesso. Após isso, ele clica em um botão para voltar, e vc devolve o formulário vazio, ou para uma outra tela.
Isso é uma opção.
Evitar ele clicar duas vezes seguidas no submit??
Crie uma função JavaScript e chame no botão quando cicado
no meu caso eu tenho esse:
<script type="text/javascript">
var submitted = false;
function submitDisable(button){
if(!submitted){
submitted = true;
button.value='Aguarde';
button.disable=true;
document.forms["summary"].submit();
}else{
alert ("Aguarde!");
}
return true;
}
</script>
Valeu galera… me ajudaram muito!!
Abraço!!
ae, eu estava com o mesmo problema, mas com a resposta do Marky.Vasconcelos deu certo, Obrigado!!
prefiro dar um new no objeto após salva-lo
objeto = New Objeto();
Assim o formulario ficará limpo após salvar e nao possibilitará um novo cadastro.