Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

sergionpinheiro

Setar combo automaticamente

Recommended Posts

Boa noite galera.

 

Tenho um código para carregar combos dinamicamente. Estado, Cidade e Bairro.

 

Ele está funcionando perfeitamente, mas queria fazer uma pequena modificação.

 

Quando eu seleciono um estado, automaticamente ele carregar a lista de cidades daquele Estado. Porém, nenhum registro desta lista é "setado/clicado". Contudo, a lista de bairros fica a espera que eu clique em alguma Cidade.

 

O que eu queria era que quando eu selecionasse um Estado, automaticamente ele carregasse a Cidade (já selecionada) e, consequentemente, os bairros.

 

No momento, ele carrega um por vez. Porém, depois de eu fazer todos os selects, caso queira mudar o Estado, o bairro continuará setado com a última cidade.

 

Segue o código:

<script type="text/javascript">
 
    $(document).ready(function(){
 
       $("select[name=estado]").change(function(){
          $("select[name=cidade]").html('<option value="0">Carregando...</option>');
 
          $.post("citys.php",
             {estado:$(this).val()},
             function(valor){
                $("select[name=cidade]").html(valor);
                return;
 
             });
       });
    });
 
</script>
 
<script type="text/javascript">
 
    $(document).ready(function(){
 
       $("select[name=cidade]").change(function(){
          $("select[name=bairro]").html('<option value="0">Carregando...</option>');
 
          $.post("district.php",
             {cidade:$(this).val()},
             function(valor){
                $("select[name=bairro]").html(valor);
             });
       });
    });
 
</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

O que eu queria era que quando eu selecionasse um Estado, automaticamente ele carregasse a Cidade (já selecionada) e, consequentemente, os bairros.

mas você ainda não sabe o estado, então não tem como os bairros saberem o que mostrar.

Ou você queria carregar "os bairros de tal estado" ? pulando assim a cidade ?

 

É uma requisição desnecessária, já que o usuário precisa ainda selecionar a cidade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Bruno.

 

É o seguinte. Quando eu selecionar o ESTADO, eu quero setar automaticamente a primeira CIDADE que pertence a ele, ou se não houver, ele seta "0". Na hora que isso ocorrer, automaticamente o BAIRRO será carregado, havendo ou não bairros para aquela cidade.

 

O que ocorre hoje, é que preciso clicar na CIDADE que é carregada. Somente depois disso que os bairros são carregados.

 

Queria saber se existe algum comando para que quando eu carregasse uma lista (CIDADE), ele "clicasse" num valor dessa lista, o que acionaria automaticamente os bairros.

 

Abraço.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hum.. ah sim.

 

Vc pode fazer com um

$("select[name=cidade]").trigger('change');
e assim disparar o evento para buscar o bairro, de dentro do estado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Deu quase certo. Funcionou com esse código que você passou.

 

Quando cliquei no ESTADO ele carregou a Cidade e o Bairro automaticamente. Porém, depois de ter feito isso, eu voltar e clicar novamente no Estado, ele não seta a Cidade, somente carrega, pq o bairro continua vinculado com a cidade anterior. É como se ele só funcionasse uma vez.

 

Tem como contornar isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

ele não seta a Cidade, somente carrega

hum? como assim ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Com esse código que você passou, funcionou. Quando clico no Estado, ele já carrega as cidades com uma setada, ou seja, automaticamente carregou os bairros.

 

O problema é, se eu mudar, nesta mesma pesquisa, o Estado, o bairro continua setado com a última cidade. É como se o código funcionasse somente uma vez. Ele carrega as cidades, mas a partir da segunda pesquisa, não seta mais, entendeu?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não faz muito sentido.

Tem um link online para eu ver acontecendo ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.