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

Select Conjugada Como Fazer


hicarocastro

Pergunta

Tenho dois campos select em meu fomulário, preciso que após a seleção da primeira a segunda se atualize informando apenas os dados relacionados.

Ex.

Tenho um campo select com todos os estados, quero que depois que o usuário escolher o estado Bahia, apareça apenas as cidades do estado selecionado, como fazer?

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Olá hicarocastro,

Para que uma combo atualize após a seleção do valor da primeira, você pode fazer de duas formas:

1º - Sem dar submit na página, utilizando JavaScript. Particularmente eu não gosto desta opção, uma vez que todos os dados deverão ser carregados na página para que o javascript funcione.

Se você optar por este método você pode pegar o script de combos dinâmicas no link: Combos Dinâmicas

2º - Outra opção seria dando um submit na página após a mudança de valor da primeira combo.

Ex.:

Vamos supor que a rotina abaixo recupere os dados de uma tabela de Estados.

<form name="Form" method="Post">
Estados: <select name="Estados" size="1" onChange="javascript: if(this.value != 0) Form.submit();">
<option value="0">Selecione o Estado</option>
<%
        Dim oConn, oRs, Ds, MySQL

        Ds = "Provider=Microsof.Jet.Oledb.4.0; Data Source=c:\inetpub\wwwroot\banco.mdb"

       '------------------------------------------------------------------------------
       '   Abre o banco de dados
       '------------------------------------------------------------------------------
        Set oConn = Server.CreateObject("ADODB.Connection")
        oConn.Open Ds

       '-------------------------------------------------------------------------------
       '   Recupera os registros
       '-------------------------------------------------------------------------------
        Set oRs = Server.CreateObject("ADODB.Recordset")
        MySQL = "Select EstadoID, Estado From Estados Order By Estado"
        oRs.open MySQL, oConn

       '-------------------------------------------------------------------------------
       '   Monta o combo com os Estados
       '-------------------------------------------------------------------------------
        If Not oRs.EOF Then
             Do While Not oRs.EOF
                  Response.Write("<option value='"& oRs("EstadoID") &"'>" &  Trim(oRs("Estado")) & "</option>")
                  oRs.MoveNext
              Loop
        End If


%>
</select>
<br>
Cidades:
<select name="Cidades" size="1">
<%
      If Request("Estado") <> "0" Then
        Dim EstadoSelecionado

        EstadoSelecionado = Request("Estado")

        '-----------------------------------------------------------------------------
        '   Recupera os registros
        '-----------------------------------------------------------------------------
        MySQL = "Select CidadeID, Cidade From Cidades Where EstadoId = "& EstadoSelecionado &" Order By Cidade"
        oRs.open MySQL, oConn

       '-----------------------------------------------------------------------------
       '   Monta o combo com as cidades
       '-----------------------------------------------------------------------------
        If Not oRs.EOF Then
             Do While Not oRs.EOF
                  Response.Write("<option value='"& oRs("CidadeID") &"'>" &  Trim(oRs("Cidade")) & "</option>") 
                  oRs.MoveNext
              Loop
        End If

      End If
%>
</select>


<%
       '----------------------------------------------------------------------------
       '   Fecha os objetos
       '----------------------------------------------------------------------------
       oRs.Close
       Set oRs = Nothing
       oConn.Close
       Set oConn = Nothing
%>

É isso

ph34r.gif

Link para o comentário
Compartilhar em outros sites

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...