-
Notifications
You must be signed in to change notification settings - Fork 0
/
cep.js
41 lines (32 loc) · 1.12 KB
/
cep.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
const formCep = document.getElementById("cep");
const inputCep = document.getElementById("num");
const inputButtom = document.getElementById ("buttom");
const BASE_URL = "https://brasilapi.com.br/api";
const rua = document.getElementById("rua");
const bairro = document.getElementById("bairro");
const cidade = document.getElementById("cidade");
const estado = document.getElementById("estado");
const buscaCEP = async (cep) => {
return await fetch(`${BASE_URL}/cep/v1/${cep}`).then((response) => {
return response.json();
});
}
const retornoBusca = (buscando = true) => {
inputCep.disabled = buscando;
inputButtom.disabled = buscando;
inputButtom.innerText = buscando ? "Buscando" : "Buscar"
};
formCep.addEventListener("submit", async (form) => {
form.preventDefault();
retornoBusca();
const retorno = await buscaCEP(inputCep.value);
if (retorno?.message){
alert(retorno?.message);
} else {
rua.value = retorno?.street
bairro.value = retorno?.neighborhood
cidade.value = retorno?.city
estado.value = retorno?.state
}
retornoBusca(false);
})