Skip to content

Instantly share code, notes, and snippets.

@diego-mi
Last active August 29, 2015 14:20
Show Gist options
  • Save diego-mi/24a2bdeecf4adadd8e39 to your computer and use it in GitHub Desktop.
Save diego-mi/24a2bdeecf4adadd8e39 to your computer and use it in GitHub Desktop.
;(function( win, doc, $, undefined ) {
'use strict';
function ServiceCEP() {
var $public = {};
var $private = {};
$private.cepValido = function cepValido(dados, prefixo) {
if (dados) {
$("#endereco" + prefixo).val(dados.logradouro);
$("#bairro" + prefixo).val(dados.bairro);
$("#cidade" + prefixo).val(dados.localidade);
$("#uf" + prefixo + " option[value='"+dados.uf+"']").attr('selected', true);
$('#cep' + prefixo).removeClass('invalid');
}
}
$private.cepInvalido = function cepInvalido(elemento) {
elemento.addClass('invalid');
}
$public.getEndereco = function getEndereco(elemento) {
var cep = elemento.val().replace(/[^0-9]/, '')
, prefixo = elemento.attr('data-prefixo') || '';
console.log(cep);
if (cep.length == 8) {
console.log("Buscando cep " + cep);
var url = 'http://cep.correiocontrol.com.br/' +cep+ '.json';
$.get(url, function(data, status){
console.log(status);
if (status == 'success') {$private.cepValido(data, prefixo);}
else {$private.cepInvalido(elemento);}
});
}
}
return $public;
}
win.Module = win.Module || {};
win.Module.ServiceCEP = ServiceCEP();
})( window, document, $ );
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment