Ir para conteúdo

POWERED BY:

Arquivado

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

andreymor

AJAX em busca

Recommended Posts

Bem, explicando logo de cara:

 

tenho um sistema de busca, onde o usuario seleciona UF(que gera combo com estados), seleciona CIDADE(que gera combo com bairros).

Esses tres combos, servem de base para buscar dados em bairros especificos.

 

Ao dar um submit na página, ela me retorna os resultados. Até aqui, correto.

O problema maior é que, como é óbvio, o AJAX elimina os dados dos combos ao dar um refresh na pagina, para emitir os resultados.

 

Teria como eu recuperar isso? Para que o usuario nao precise voltar a selecionar UF, cidade e bairro?

 

anteriormente, o sistema de busca era todo em ajax, me retornando o resultado em uma DIV. Mas o cliente pediu a habilitação do botao ENTER.

Daí coloquei a ONSUBMIT no form, mas nao tem como retornar um JAVASCRIPT no action do form, apenas no ONSUBMIT.

 

Estou portando isso aqui e na área de php.

 

Att,

Andrey Moretti

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não sei se vai servir para o seu caso, mas poderia armazenar os valores em sessões, usando PHP, e exibir nos campos depois do submit. Posta o code para vermos a melhor alternativa.

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem Gutto, pensei nessa hipótese, mas o valor da session que eu armazenaria, seria apenas o escolhido?

pq ele precisa selecionar um estado para listar as cidades, e uma cidade para listar os bairros.

Sendo assim, poderia gravar na session o valor escolhido para cada um e como proceder depois?

 

Teria entao como gravar o dado completo na session? tipo: todas as cidades e todos os bairros?

Compartilhar este post


Link para o post
Compartilhar em outros sites
Ou você pode jogar na URL ou em hidden pra depois fazer um IF (php) dentro do combo. Se o valor do combo for igual aquele que você está requisitando, entao imprima "SELECTED"

Compartilhar este post


Link para o post
Compartilhar em outros sites

Particularmente não coloco sessões com valor muito grande, no seu caso deve funcionar da seguinte maneira:

 

Armazene somente os valores dos combos, como falei anteriormente. A função ajax deve ser chamada atualmente no evento onChange do select; Mesmo que não seja, faça uma comparação usando if, e caso o a sesão exista ($_SESSION["cidade"], por exemplo) que o script chame a função que preenche o select, informando como parâmetro o valor da variável. Assim você teria algumas sessões armazenando um valor pequeno, e a qualquer requisição da página, os selects estariam preenchidos.

Compartilhar este post


Link para o post
Compartilhar em outros sites

entao GUTTO, era justamente isso que estava pensando em fazer. Não manjo muito de javascript, entao qual a melhor maneira de chamar essa função, caso a session exista?

 

estou tentando pelo ONLOAD, mas nao me retorna nada.

 

teria algum outro metodo?

 

Att,

Andrey Moretti

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem mexendo aqui, estou conseguindo. Minha pergunta é:

 

pego a div para exibir o resultado. Pq, se eu coloco o javascript antes dela, para o evento ONLOAD, ele nao pega a DIV? só pega se eu colocar depois?

 

Assim nao pega

//aqui vem o javascript pegando a div.

<div id="teste"></div>

assim pega

<div id="teste"></div>
//aqui vem o javascript pegando a div.

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.