1
+ function BuscaCep ( ) {
2
+ $ ( document ) . ready ( function ( ) {
3
+
4
+ function limpa_formulário_cep ( ) {
5
+ // Limpa valores do formulário de cep.
6
+ $ ( "#Endereco_Logradouro" ) . val ( "" ) ;
7
+ $ ( "#Endereco_Bairro" ) . val ( "" ) ;
8
+ $ ( "#Endereco_Cidade" ) . val ( "" ) ;
9
+ $ ( "#Endereco_Estado" ) . val ( "" ) ;
10
+ }
11
+
12
+ //Quando o campo cep perde o foco.
13
+ $ ( "#Endereco_Cep" ) . blur ( function ( ) {
14
+
15
+ //Nova variável "cep" somente com dígitos.
16
+ var cep = $ ( this ) . val ( ) . replace ( / \D / g, '' ) ;
17
+
18
+ //Verifica se campo cep possui valor informado.
19
+ if ( cep != "" ) {
20
+
21
+ //Expressão regular para validar o CEP.
22
+ var validacep = / ^ [ 0 - 9 ] { 8 } $ / ;
23
+
24
+ //Valida o formato do CEP.
25
+ if ( validacep . test ( cep ) ) {
26
+
27
+ //Preenche os campos com "..." enquanto consulta webservice.
28
+ $ ( "#Endereco_Logradouro" ) . val ( "..." ) ;
29
+ $ ( "#Endereco_Bairro" ) . val ( "..." ) ;
30
+ $ ( "#Endereco_Cidade" ) . val ( "..." ) ;
31
+ $ ( "#Endereco_Estado" ) . val ( "..." ) ;
32
+
33
+ //Consulta o webservice viacep.com.br/
34
+ $ . getJSON ( "https://viacep.com.br/ws/" + cep + "/json/?callback=?" ,
35
+ function ( dados ) {
36
+
37
+ if ( ! ( "erro" in dados ) ) {
38
+ //Atualiza os campos com os valores da consulta.
39
+ $ ( "#Endereco_Logradouro" ) . val ( dados . logradouro ) ;
40
+ $ ( "#Endereco_Bairro" ) . val ( dados . bairro ) ;
41
+ $ ( "#Endereco_Cidade" ) . val ( dados . localidade ) ;
42
+ $ ( "#Endereco_Estado" ) . val ( dados . uf ) ;
43
+ } //end if.
44
+ else {
45
+ //CEP pesquisado não foi encontrado.
46
+ limpa_formulário_cep ( ) ;
47
+ alert ( "CEP não encontrado." ) ;
48
+ }
49
+ } ) ;
50
+ } //end if.
51
+ else {
52
+ //cep é inválido.
53
+ limpa_formulário_cep ( ) ;
54
+ alert ( "Formato de CEP inválido." ) ;
55
+ }
56
+ } //end if.
57
+ else {
58
+ //cep sem valor, limpa formulário.
59
+ limpa_formulário_cep ( ) ;
60
+ }
61
+ } ) ;
62
+ } ) ;
63
+ }
0 commit comments