-
Notifications
You must be signed in to change notification settings - Fork 0
/
script.js
58 lines (38 loc) · 1.84 KB
/
script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
async function buscaEndereco(cep){
var mensagemErro = document.getElementById('erro');
mensagemErro.innerHTML = "";
try{
var consultaCEP = await fetch(`https://viacep.com.br/ws/${cep}/json/`)
var consultaCEPConvertida = await consultaCEP.json();
if (consultaCEPConvertida.erro){
throw Error('CEP não existente!');
}
var cidade = document.getElementById('cidade');
var logradouro = document.getElementById('endereco');
var estado = document.getElementById('estado');
var bairro = document.getElementById('bairro');
cidade.value = consultaCEPConvertida.localidade.toUpperCase();
logradouro.value = consultaCEPConvertida.logradouro.toUpperCase();
estado.value = consultaCEPConvertida.uf.toUpperCase();
bairro.value = consultaCEPConvertida.bairro.toUpperCase();
console.log(consultaCEPConvertida);
return consultaCEPConvertida;
} catch (erro) {
if (cep != /^[0-9]{5}?-[0-9]{3}$/){
mensagemErro.innerHTML = `<p>CEP inválido. Um CEP válido contém 8 números, sem espaço ou letras. Insira o CEP novamente.</p>`;
console.log(erro);
} else {
mensagemErro.innerHTML = `<p>CEP inválido. Tente novamente!</p>`;
console.log(erro);
}
}
}
var cep = document.getElementById('cep');
cep.addEventListener("focusout", () => limparEnd()); //Limpa os campos
cep.addEventListener("focusout", () => buscaEndereco(cep.value));
function limparEnd() {
cidade.value = " ";
endereco.value = " ";
estado.value = " ";
bairro.value = " ";
}