[Resolvido] Ao validar return false mas o form é submitido assim mesmo

1 resposta
C

Prezados, boa tarde

Depois de muito pesquisar, não conseguir encontrar nada que solucionasse meu problema.

Estou validando um form com JavaScript, veja:

var envia = true;
function validar() {
        var nome = form1.txtTitulo.value;

        if (nome == "") {
        alert('Valor '+String(envia));
            alert('Preencha o campo com um Título.');
             envia = false;
             alert('Valor '+String(envia)); //apenas para verificar se realmente o retorno é falso.
        form1.txtTitulo.focus();
        }
 
}

No form, tanto na linha <form action="pg_Home_gravar.jsp" method="post" name="form1">, como no botão submit

<input type="submit" onclick="return validar()" value="Gravar">, eu acrescento o treixo onclick="return validar() ou no form
onSubmit return validar().
A validação é feita com sucesso! mas caso seja falso, ou seja, mesmo o campo estando vazio, o mesmo é submitido e os dados “vazios” são enviados.

??? Alguem saberia como eu resolvo isso ???

E por algum acaso, alguem teria uma forma melhor de validar os campos do formulário web usando jsp c/ JSTL ?

Desde Já agradeço

1 Resposta

C

Resolvido.
Deixo o input como button e na função javaScript submeto o formulario.

function validar() {
        var nome = form1.txtTitulo.value;
        if (nome == "") {
            alert('Preencha o campo com um Título.');
           form1.txtTitulo.focus();
           return 0; 
        }
        
    alert("Muito obrigado por enviar o formulário");
    document.form1.submit(); 
    }
<p >&lt;input type="button" onclick="return validar(this);" value="Gravar"&gt; </p>
Criado 12 de março de 2012
Ultima resposta 13 de mar. de 2012
Respostas 1
Participantes 1