Ir para conteúdo

POWERED BY:

Arquivado

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

rodrigo-es

Campo atualizável

Recommended Posts

Olá, Gostaria de saber algo que não encontrei aqui por enquanto (se tiver, favor me avise onde está). É o seguinte: Preciso de um código ASP que atualize um campo em relação a outro. Exemplo: numa página tenho um formulário com dois campos (caixa selecionável) e um botao submit para fazer uma busca: Cidade, Bairro e Procurar. Quero que quando o internauta escolha a Cidade atualize o campo Bairro automaticamente mostrando os bairros da cidade escolhida sem clicar em nenhum botão, para depois clicar no Procurar e fazer a busca da cidade e bairro (tanto as cidades quanto os bairros estão num banco de dados).Vcs tem esse código disponível ou sabem como fazer isso?Obs: Só preciso do código da atualização de um campo em relação ao outro automaticamente...Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pode existir outras formas, mais uma delas é fazer um select....... where cidade='&busca&' no qual busca é a variavel query que captura cidade digitada e fazer uma buscaentão voce joga no campo o Rs("cidade")Deu pra entender?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera ....Vou dar uma dica pra vocês.......

 

Ao invés de dar um refresh para atualizar um combo, pq não utilizamos um "Window.ShowModalDialog" ????

 

Utilizando a Apção "OnChange()" do Combo, disparamos a função "BuscaCidades"

 

Mais ou Menos Assim

<script Language="vbscript">Sub Combo_Estado_OnChange()Retorno = Window.ShowModalDialog("captura_cidades.asp?estado=" & document.fomr.combo_estado.valueFor a = 0 to Ubound(Retorno)    Set OOption = Document.Createelement("Option")          OOPtion.Text = Retorno(a,1)          OOPtion.value = Retorno(a,0)          document.form.combo_cidade.Add OOptionNextEnd Sub</script>

 

E Então na Página "captura_cidades.asp" Colocamos o seguinte código

 

<%Set ORs = Server.CreateObject("adodb.recordset")     ORs.CursorLocation = 3     ORs.Open "Select cd_cidade,nome_cidade from tb_cidades where estadp='" & Request("estado") & "'"Response.Write "<script Language=""vbscript"">" & vbcrlfResponse.Write "Dim Retorno" & vbcrlfResponse.Write "ReDim Retorno(" & ORs.RecordCount & ",1)" & vbcrlfCount = 0Do Until ORs.EofResponse.Write "Retorno(" & Count & ",0")=" & ORs("cd_cidade") & vbcrlfResponse.Write "Retorno(" & Count & ",1")=" & ORs("nome_cidade") & vbcrlfOrs.MovenextLoopResponse.Write "ReturnValue = Retorno" & vbcrlfResponse.Write "Window.Close"Response.Write "</script>"

Compartilhar este post


Link para o post
Compartilhar em outros sites

você pode obter o efeito desejado usando XML/XSL/Javascript. Funciona mais ou menos assim: O usuário escolhe o estado, e no evento OnChange do SELECT é enviado o parâmetro do estado para o arquivo ASP responsável pelo processamento, via Javascript (utilizando o DOM - Document Object Model). É feito um SELECT no banco, selecionando as cidades correspondentes ao estado fornecido como parâmetro, e depois gera-se uma estrutura em XML com as cidades desejadas. O documento é retornado para o client (atráves do SOAP) onde é feito a mesclagem com o XSL para exibir os resultados esperados. Tudo isso sem dar refresh na página. Só que montar essa estrutura é um pouco complicada, e talvez gaste-se muito trabalho para fazer dessa forma. Mas é um opção. A dica postada anteriormente, pelo "mebkocznski" também é bem interessante. Flw, André.

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.