Array
(
)

Pegar javascript/jquery no botão

Pjava
   - 17 mar 2014

Tenho esse botão:
<div class="grid_17">
<button value="novaPesquisa" class="btn-pular-passo pull-right" id="btnEndereco">Continuar</button>
</div>
Existe um <form> bem grande, onde esse botão está inserido, tudo dividido por DIV's. Bem, acontece que algumas DIV's, elas entram com Display="none" e elas somente serã visiveis, no click desse botão. Eu fiz uma validação de campos em branco e logo, quando há campos em branco, já mostra um "hint" no próprio componente dizendo que aquele campo precisa ser preenchido. Bem, tenho os seguintes problemas. A função de validação, ela pega todo o form e todas as DIV's, inclusive a do botão e as que estão hide, estão dentro desse form. Ai pergunto? Será que funciona ou terei que criar dois forms: um para os campos que já entram aparecendo e o botão e outro form para os que estão escondidos ou não? E como eu faço isso no botão, ou seja, saber se foram ou não validados? Abaixo a função jquery para validar.
#Código

var validateOptions = {
                ignore: "",
                errorElement: false,
                highlight: function (field) {
                    $(field).addClass('has-error').removeClass('has-success');
                },
                unhighlight: function (field) {
                    $(field).addClass('has-success').removeClass('has-error');
                },
                errorPlacement: function () {
                }
            };

            $('#formConfirmaDados').data('validate', $('#formConfirmaDados').validate(validateOptions));

Joel Rodrigues
   - 18 mar 2014

Se não me engano, existe uma função valid() que retorna se um elemento foi validado com sucesso.
Para exibir/esconder as divs, basta dar um id para cada uma e tratá-las individualmente.

Pjava
   - 18 mar 2014

Esconder eu já fiz. Quanto a fução de validar também já está pronta. O que eu não estou conseguindo, é na minha função .click em javascript fazer mostrar somente quando os campos forem preenchidos. Está mostrando, mesmo com campos não preenchidos, ou seja, não validados. A função .click é essa, mas estou errando na lógica, não sei como verificar pela função acima se estão ou não preenchidos os campos para chamar o código de mostrar.

Joel Rodrigues
   - 22 mar 2014

Para verificar se estão preenchidos é só ver se o val() é diferente de "" (vazio).