Sign up to create your own snipts, or login.

Public snipts » rochacbruno's snipts » Busca de CEP com Jquery e republica virtual

posted on Oct 20, 2009 at 7:13 a.m. EDT in 
  • <html>
    <head>
    
    <script type="text/javascript">
    // Função única que fará a transação
    	function getEndereco() {
    
       // Se o campo CEP não estiver vazio
    if($.trim($("#cep").val()) != ""){
    /*Para conectar no serviço e executar o json, precisamos usar a função
    getScript do jQuery, o getScript e o dataType:"jsonp" conseguem fazer o cross-domain,
    os outros dataTypes não possibilitam esta interação entre domínios diferentes Estou
    chamando a url do serviço passando o parâmetro "formato=javascript" e o CEP digitado no
    formulário http://cep.republicavirtual.com.br/web_cep.php?formato=javascript&cep="+$("#cep").val()*/
    
    $.getScript("http://cep.republicavirtual.com.br/web_cep.php?formato=javascript&cep="+$("#cep").val(), function(){
    // o getScript dá um eval no script, então é só ler!
    //Se o resultado for igual a 1
    //se o tipo de logradouro for direfente de nulo
    					
    if (resultadoCEP["tipo_logradouro"] != '') {
    	if (resultadoCEP["resultado"]) {
    	// troca o valor dos elementos
    $("#rua").val(unescape(resultadoCEP["tipo_logradouro"]) + ": " + unescape(resultadoCEP["logradouro"]));
    $("#bairro").val(unescape(resultadoCEP["bairro"]));
    $("#cidade").val(unescape(resultadoCEP["cidade"]));
    $("#estado").val(unescape(resultadoCEP["uf"]));
    //dá o foco no numero
    $("#numero").focus();
    		}
    					
    	}	
    					
        });
     }
    }
    
    
    </script> 
    
    
    </head>
    <body>
    <form>
    <fieldset>
      <legend>Formulário de exemplo</legend>
      <label for="cep">CEP:</label>
    <input id="cep" maxlength="8" name="cep" size="9"  onBlur="getEndereco()"/>
    
      <label for="rua">Logadouro:</label>
    <input id="rua" name="rua" size="50" />
    
      <label for="bairro">Bairro:</label>
    <input id="bairro" name="bairro" size="30" />
    
      <label for="cidade">Cidade:</label>
    <input id="cidade" name="cidade" />
    
      <label for="estado">Estado</label>
    <input id="estado" maxlength="2" name="estado" size="2" />
    
      </fieldset>
    </form>
    </body>
    </html>
    

    copy | embed

0 Comments

Sign up, or login to leave a comment.