Ir para conteúdo
Fórum Script Brasil
  • 0

como desincorporar um código js do html


Rodolfo7777

Pergunta

Bom dia gente, sou novo em javascript e estou tendo muitas duvidas sobre a parte de arquivos externos;
Hoje por exemplo estava tentando fazer um formulario e tentei colocar um script para preenchimento altomatico do endereço que peguei nesse link:
http://viacep.com.br/exemplo/jquery/
Nele basta preencher o CEP e o formulário de endereço se auto completa.
Pois bem, ao incorporar o código na própria página "index.html" tudo funcionou muito bem.
Mas quando eu tentei separar o js do html pra ficar um código mais limpo parou de funcionar.

Vejam o passo a passo do que eu fiz:

Primeiro peguei o fonte na página acima

<html>
<head>
<title>ViaCEP Webservice</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<!-- Adicionando JQuery -->
<script src="http://code.jquery.com/jquery-1.10.2.min.js"></script>

<!-- Adicionando Javascript -->
<script type="text/javascript" >

$(document).ready(function() {

function limpa_formulário_cep() {
// Limpa valores do formulário de cep.
$("#rua").val("");
$("#bairro").val("");
$("#cidade").val("");
$("#uf").val("");
$("#ibge").val("");
}

//Quando o campo cep perde o foco.
$("#cep").blur(function() {

//Nova variável com valor do campo "cep".
var cep = $(this).val();

//Verifica se campo cep possui valor informado.
if (cep != "") {

//Expressão regular para validar o CEP.
var validacep = /^[0-9]{5}-?[0-9]{3}$/;

//Valida o formato do CEP.
if(validacep.test(cep)) {

//Preenche os campos com "..." enquanto consulta webservice.
$("#rua").val("...")
$("#bairro").val("...")
$("#cidade").val("...")
$("#uf").val("...")
$("#ibge").val("...")

//Consulta o webservice http://viacep.com.br/
$.getJSON("http://viacep.com.br/ws/"+ cep +"/json/?callback=?", function(dados) {

if (!("erro" in dados)) {
//Atualiza os campos com os valores da consulta.
$("#rua").val(dados.logradouro);
$("#bairro").val(dados.bairro);
$("#cidade").val(dados.localidade);
$("#uf").val(dados.uf);
$("#ibge").val(dados.ibge);
} //end if.
else {
//CEP pesquisado não foi encontrado.
limpa_formulário_cep();
alert("CEP não encontrado.");
}
});
} //end if.
else {
//cep é inválido.
limpa_formulário_cep();
alert("Formato de CEP inválido.");
}
} //end if.
else {
//cep sem valor, limpa formulário.
limpa_formulário_cep();
}
});
});

</script>
</head>

<body>
<!-- Inicio do formulario -->
<form method="get" action=".">
<label>Cep:
<input name="cep" type="text" id="cep" value="" size="10" maxlength="9" /></label><br />
<label>Rua:
<input name="rua" type="text" id="rua" size="60" /></label><br />
<label>Bairro:
<input name="bairro" type="text" id="bairro" size="40" /></label><br />
<label>Cidade:
<input name="cidade" type="text" id="cidade" size="40" /></label><br />
<label>Estado:
<input name="uf" type="text" id="uf" size="2" /></label><br />
<label>IBGE:
<input name="ibge" type="text" id="ibge" size="8" /></label><br />
</form>
</body>

</html>

Depois recortei a parte do script js e salvei em um arquivo chamdo "cep.js", este arquivo está dentro da pasta "js".
Depois fui até o html e fiz a chamada do novo arquivo desta forma : <script type="text/javascript" src="cep.js"> </script>

Mas agora o formulario não está sendo mais validado. Alguém pode me explicar o porque?
Toda ajuda será bem vinda.
Muito obrigado

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...