quinta-feira, 5 de fevereiro de 2009

Como colocar uma mensagem do Jquery validate dentro de um objeto definido

Fiquei um dia tentando colocar a mensagem do Jquery validate dentro de um <p>, pois o validate cria um label, e ele tava pegando as propriedades do css da pagina, e tava acabando com o layout.

Depois de ler muito o código fonte do validate, consegui o seguinte código:


<script type="text/javascript">
$(document).ready(function(){

$("#form_login").validate({ //nome do formulário
rules: {
user_login: { // regra do campo user_login
required:true, // campo requirido
minlength: 2 // deve ter no mínimo 2 caracteres
},
user_pass: {
required:true,
minlength: 4
}
},
errorPlacement: function(error, element) { // função que define onde deve ser colocado os erros
var elemento = "#"+element.attr("name")+'_p';
$(elemento).html(error.html());
}
});

});
</script>


Como eu já tinha colocado no formulário paragrafos seguindo o padrão nome_do_elemento_p, na linha var elemento = "#"+element.attr("name")+'_p'; eu crio uma variável de texto pegando o nome do elemento com erro e adicionando no final o _p

Na linha $(elemento).html(error.html()); pegamos a mensagem de erro a colocamos dentro do p.

Fácil? depois que ralei procurando como faz ficou sim!

Qualquer dúvida, comente.

6 comentários: