Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá,
estou tentando utilizar esse plugin do jquery para validar um formulário, para coisas normais do tipo requerido tamanho minimo etc esta funcionando tudo correto, o problema está quando tento fazer uma validação com o REMOTE que você manda o valor do input para validar serverside e retorna 'true' ou 'false' para o java script
pois bem a requisição está certinha aparece o true caso o valor informado esteja disponivel para cadastrar ou false caso contrário (da para ver isso usando o firebug)
porém o formulário não mostra as msgs de erro informando que campo não é valido ou se está tudo ok e permite o envio dele mesmo estando não válido o campo
criei um cnpj com todos os dígitos 00000000000000 já cadastrado que deveria aprecer msg de erro, e qualuqer outro valor está disponível para testar onde não deveria apresentar msg de erro
o mesmo vale para o EMAIL DO CONTATO onde o teste@teste.com.br está cadastrado e não apresenta msg de erro e qualuqer outro valor está disponível
alguem já utilizou esta função? sabe oque está errado?
vlw
link
http://www.isopoint.com.br/app/cadastro.php
codigo validação JS
$("#cadastro_cliente").validate({
//errorPlacement: function(label, element) { label.insertAfter( element.next() ); },
//event: "blur",
rules: {
razao_social: "required",
cnpj: {
required: true,
//minlength: 18,
remote: "action/verifica_cadastro.php?tipo=cnpj"
},
inscricao_estadual: "required",
endereco: "required",
numero: "required",
bairro: "required",
cidade: "required",
estado: "required",
cep: "required",
telefone: "required",
email:{
required: true,
email: true
},
contato_nome: "required",
contato_cargo: "required",
contato_telefone: "required",
contato_email:{
required: true,
email: true,
remote: "action/verifica_cadastro.php?tipo=contato_email"
},
senha: {
required: true
},
senha2: {
required: true,
equalTo: "#senha"
}
},
messages:{
cnpj:{ required: 'Campo obrigatório', remote: 'CNPJ já cadastrado'},
contato_email:{ remote: 'E-mail já cadastrado'}
},
submitHandler: function(form) {
var dados = $("#cadastro_cliente").serialize();
$.ajax( {
type: "POST",
url: "cadastro.php",
//url: this.action,
data: "acao=cadastrar&"+decodeURIComponent(dados),
//data: "acao=cadastrar&"+dados,
beforeSend: function() {
$("#formulario").hide();
$("#loading").show();
$("#loading").html('<br /><img src="media/images/carregando.gif" /> <br />');
},
success: function(txt) {
$("#loading").html(txt);
},
error: function(txt) {
alert('Erro no ajax');
}});
return false;
}
});
Opa então aparentemente descobri qual o problema... tive que mudar os arquivos para utf8 sem BOM, parece que resolveu. Antes as vezes mostrava as msg de validação as vezes não, isso devido pq também as vezes os arquivos com BOM colocam espaço em branco no início oque fazia o retorno do true e false ficar errado
vlw
Carregando comentários...