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

Validate e onSubmit


AlexSandroJAP

Pergunta

Olá amigos, estou precisando de uma luz. Em um form para cadastro de doações para uma creche estou tentando validar o form com jquery. Até que os campos basicos derao certo(nome, cpf, end, tel...), mas nesse form tb tem 4 "radios", sendo 20,00 | 30,00 | 50,00 e o quarto e ultimo radio ativa um input pra propria pessoa informar o valor. O problema é validar isso com plugin validate. então resolvi fazer um function testando se foi selecionado um deles e se foi o ultimo que o valor do input seja maio q zero. Porem estou validando essa funcao no onSubmit do form, mas ele dá a mensagem que esta no form mais não barra do form ser enviado. alguém sabe se existe a possibilidade de trabalhar com esses dois em conjunto?

<script type="text/javascript">
    $(document).ready(function()
    {
      //Mascaras
      $("#cpf").mask("999.999.999-99");
      $("#telefone").mask("(99) 9999-9999");
      $("#celular").mask("(99) 9999-9999");
      $("#cep").mask("99.999-999");

      $('#valorespontaneo').priceFormat(
      {
        prefix: '',
        centsSeparator: ',',
        thousandsSeparator: '.',
        limit: 7,
        centsLimit: 2
      });

      //Validação
      $("#formsejacolaborador").validate(
      {
        rules: {
          nome: {required: true},
          cpf: {required: true, cpf: true},
          telefone: {required: true},
          celular: {notEqual: "#telefone"},
          endereco: {required: true},
          numero: {required: true},
          bairro: {required: true},
          cidade: {required: true},
          estado: {required: true},
          cep: {required: true},
          email: {required: false, email: true}
        },
        messages: {
          nome: {required: 'Preenchimento Obrigatório'},
          cpf: {required: 'Preenchimento Obrigatório', cpf: 'CPF Inválido!'},
          telefone: {required: 'Preenchimento Obrigatório'},
          celular: {notEqual: 'Opcional. Mas deve ser diferente do "Telefone"'},
          endereco: {required: 'Preenchimento Obrigatório'},
          numero: {required: 'Preenchimento Obrigatório'},
          bairro: {required: 'Preenchimento Obrigatório'},
          cidade: {required: 'Preenchimento Obrigatório'},
          estado: {required: 'Preenchimento Obrigatório'},
          cep: {required: 'Preenchimento Obrigatório'},
          email: {required: 'Preenchimento Opcional', email: 'Opcional. Mas precisa ser válido'}
        }
      });
    });
  </script>
<script>
    function validaApenasValorContribuicao()
    {
      f = document.formsejacolaborador;

      marcado = -1;
      for(i=0; i<f.valor.length; i++)
      {
        if(f.valor[i].checked)
        {
          marcado = i;
        }
      }

      if(marcado == -1)
      {
        alert("Escolha 'Valor de Contribuição'");
        f.valor[0].focus();
        return false;
      }
      else if((marcado == 3) && (f.valorespontaneo.value == "0,00"))
      {
        alert("Valor precisa ser diferente de '0,00'");
        f.valorespontaneo.focus();
        return false;
      }

      return true;
    }
  </script>
<form id="formsejacolaborador" name="formsejacolaborador" method="post" action="enviaemailsejacolaborador.php" onSubmit="return validaApenasValorContribuicao();" >

Abraços

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

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
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...