• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

DeeKilleer

Select Estado Cidade

1 mensagem neste tópico

:wallbash:

Por favor, quem tiver com tempo e compreensão.. Eu quero selecionar no select estado.. um estado(óbvio), mas ao selecioná-lo eu quero que apareça no select cidade, todas as cidades respectivas do estado escolhido pelo usuário.

Obs: eu tenho todos os estados e cidades no banco de dados, e creio que o erro não seja esse.

O erro é.. o estado ele puxa do banco, aparece todos no select, mas ao selecionar o estado não aparece as cidades, fica em branco.. o que pode ser.. falta alguma coisa no select cidade ? ou no java ou no ajax ??

Compreendam é urgente!

<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="conexao.asp" -->
<%
if request.querystring("pessoa") = "F" then ' 323.506.878-30
      cadastro_valor1 = mid(request.querystring("cpf"), 1, 3)&"." 
      cadastro_valor2 = mid(request.querystring("cpf"), 4, 3)&"."
      cadastro_valor3 = mid(request.querystring("cpf"), 7 , 3)&"-"
      cadastro_valor4 = mid(request.querystring("cpf"), 10 , 2)
      cadastro_valor = cadastro_valor1&cadastro_valor2&cadastro_valor3&cadastro_valor4
end if

if request.querystring("pessoa") = "J" then ' 51.327.765/0001-71
      cadastro_valor1 = mid(request.querystring("cnpj"), 1, 2)&"."
      cadastro_valor2 = mid(request.querystring("cnpj"), 3, 3)&"."
      cadastro_valor3 = mid(request.querystring("cnpj"), 6 , 3)&"/"
      cadastro_valor4 = mid(request.querystring("cnpj"), 9 , 4)&"-"
    cadastro_valor5 = mid(request.querystring("cnpj"), 13 , 2)
      cadastro_valor = cadastro_valor1&cadastro_valor2&cadastro_valor3&cadastro_valor4&cadastro_valor5
end if

set cadastro = server.createobject("ADODB.Recordset")
cadastro.open "SELECT * FROM relacionamentos WHERE cnpj_cpf = '"&cadastro_valor&"'", conexao
if not cadastro.eof then
        relac_codigo = cadastro("RELACIONAMENTO_CODIGO")
else 
    relac_codigo = 0
end if

set verificar_existente = server.createobject("ADODB.Recordset")
verificar_existente.open "SELECT *  FROM dbo.EC_Logins WHERE relacionamento_codigo = '"&relac_codigo&"'", conexao
if not verificar_existente.eof then
%>

<script>
alert("Usuário já cadastrado. Caso não lembre sua senha, por favor clique em ''Não lembro minha senha'', para receber sua senha em seu e-mail.");
window.open("default.asp" , "_self");
</script>

<%
end if

set segmercado = server.createobject("ADODB.Recordset")
segmercado.open "SELECT * FROM segmentos_mercados", conexao


nome = "0"
if session("usuario") <> "" then
  nome = session("usuario")
end if
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>..:: Ordem de Serviço On-Line - Salcam ::..</title>
<style type="text/css">
<!--
.style5 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 12; }
.unnamed1 {
}
.style1 {font-family: Verdana, Arial, Helvetica, sans-serif}
.style32 {color: #000000}
body {
    margin-top: 0px;
    margin-left: 0px;
    margin-right: 0px;
    margin-bottom: 0px;
}
a {
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 10px;
    color: #000000;
}
a:link {
    text-decoration: none;
}
a:visited {
    text-decoration: none;
    color: #000000;
}
a:hover {
    text-decoration: underline;
}
a:active {
    text-decoration: none;
}
.style44 {font-size: 11px}
.style45 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 11px; }
.style48 {color: #999999}
.style50 {color: #999999; font-size: 10px; }
.style53 {font-size: 10px}
.style56 {font-size: 12px; font-family: Verdana, Arial, Helvetica, sans-serif; }
.style57 {
    color: #000000;
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 12px;
}
.style58 {    color: #FFFFFF;
    font-weight: bold;
    font-size: 14px;
}
.style2 {font-size: 12px}
.style61 {font-size: 10px; color: #CCCCCC; }
-->
</style>
</head>
<body>
<script>

function cidades(estado)
{
    d = document.ec_logins;
    d.seleciona_cidade.options.length = 0;
    d.seleciona_cidade.disabled = true;
    d.seleciona_cidade.options[0] = new Option("Carregando...", "0", false, false);
    a = 1;
    while (a <= cidade[estado].length-1)
    {
        d.seleciona_cidade.options[a] = new Option(cidade[estado][a][1], cidade[estado][a][0], false, false);        
        a++;
    }
    d.seleciona_cidade.options[0] = new Option("Cidade", "0", false, false);
    d.seleciona_cidade.disabled = false;
}

function validaForm(){
           d = document.ec_logins;
           if (d.login.value == "" ) {
                     alert("Por favor, preencha o campo Endereço de e-mail.");
                     d.login.focus();
                     return false;
           }           
           if (d.senha.value == "" ) {
                     alert("Por favor, preencha o campo senha.");
                     d.senha.focus();
                     return false;
           }           
           if (d.red_senha.value == "" ) {
                     alert("Por favor, preencha o campo de confirmação da senha.");
                     d.red_senha.focus();
                     return false;
           }
           if (d.senha.value != d.red_senha.value) {
                       alert("Por favor, redigite a senha novamente.");
                     d.red_senha.focus();
                     return false;
           }
           if (d.apelido.value == "" ) {
                     alert("Por favor, preencha o campo Apelido ou nome fantasia.");
                     d.apelido.focus();
                     return false;
           }
           if (d.ie.value == "" ) {
                     alert("Por favor, preencha o campo Insc. Est. / RG.");
                     d.ie.focus();
                     return false;
           }          
           if (d.titulo.value == "" ) {
                     alert("Por favor, preencha o campo titulo.");
                     d.titulo.focus();
                     return false;
           }             
           if (d.logradouro.value == "" ) {
                     alert("Por favor, preencha o campo logradouro.");
                     d.logradouro.focus();
                     return false;
           }  
           if (d.numero.value == "" ) {
                     alert("Por favor, preencha o campo numero.");
                     d.numero.focus();
                     return false;
           }  
           if (d.cep.value == "" ) {
                     alert("Por favor, preencha o campo cep.");
                     d.cep.focus();
                     return false;
           }  
           if (d.cep.value.length < 8) {
                     alert("Por favor, preencha o campo cep. corretamente");
                     d.cep.focus();
                     return false;
           }  
           
           if (d.bairro.value == "" ) {
                     alert("Por favor, preencha o campo bairro.");
                     d.bairro.focus();
                     return false;
           }  
           if (d.ddd.value == "" ) {
                     alert("Por favor, preencha o campo ddd.");
                     d.ddd.focus();
                     return false;
           }  
           if (d.telefone.value == "" ) {
                     alert("Por favor, preencha o campo telefone.");
                     d.telefone.focus();
                     return false;
           }  
           if (d.tipo.value == "" ) {
                     alert("Por favor, preencha o campo tipo.");
                     d.tipo.focus();
                     return false;
           }    
           if (d.segmento_codigo.value == "" ) {
                     alert("Por favor, preencha o campo segmento_codigo.");
                     d.segmento_codigo.focus();
                     return false;
           }         
}
</script>
<% 
data = now()
%><br>
<table width="731" height="367" border="0" align="center" cellpadding="0" cellspacing="0" bordercolor="#FFFFFF">
  <tr>
    <td width="950" height="348" valign="top" bordercolor="#FFFFFF"><div align="center">
      <form action="cadastro3.asp" name="ec_logins" id="ec_logins" onSubmit="return validaForm()" method="post">
        <table width="449" height="367" border="0" cellpadding="0" cellspacing="0">
          <tr>
            <td><table width="828" height="348" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#29166f" style="font-family:Verdana, Arial, Helvetica, sans-serif">
              <tr>
                <td width="824" height="19" colspan="3" align="center" bgcolor="#29166f"><span class="style58">..:: Cadastro ::.. </span></td>
              </tr>
              <tr>
                <td height="327" align="center"><span class="style2">Digite seus dados para prosseguir com o cadastro:<br>
                  </span><span class="style1 style39 style41 style48 style53">* 
                    campos obrigatórios</span>
                  <table width="822" height="129" border="0" align="center" cellpadding="0" cellspacing="0">
                    <tr bgcolor="#EEEEEE">
                      <td width="198" height="19"><div align="right" class="style45"><strong>
                        <input name="relacionamento_codigo" type="hidden" id="relacionamento_codigo" value="<%=(relac_codigo)%>">
                        <%if cadastro.EOF then%>
                      </strong></div></td>
                      <td width="591">
                      <input name="nome" type="hidden" id="nome" value="<%=(Request.QueryString("nome"))%>">
                      <input name="pessoa" id="pessoa" type="hidden" value="<%=(Request.QueryString("pessoa"))%>">
                      <input name="segmento_codigo" type="hidden" id="segmento_codigo" value="1">
                      <input name="cpf" type="hidden" id="cpf" value="<%=(cadastro_valor)%>">
                      <input name="tipo" type="hidden" id="tipo" value="1">
                      <input name="comercial" type="hidden" id="comercial" value="1">
                      <input name="cobranca" type="hidden" id="cobranca" value="1">
                      <input name="entrega" type="hidden" id="entrega" value="1">
                      <input name="municipio" type="hidden" id="municipio" value="5159">
                      </td>
                    </tr>
                    <tr bgcolor="#EEEEEE">
                      <td height="22" class="style56"><div align="right" class="style45 style2">
                        <div align="left">Apelido ou nome fantasia:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style45">
                        <input name="apelido" type="text" id="apelido">
                        <span class="style48">* </span></span></div></td>
                    </tr>
                    <tr bgcolor="#EEEEEE">
                      <td height="22" class="style56"><div align="right" class="style45 style2">
                        <div align="left">Insc. Est. / RG:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style45">
                        <input name="ie" type="text" id="ie">
                        <span class="style50">*(somente números)</span></span> <span class="style45">
                          <input name="data" type="hidden" id="data" value="<%=(data)%>">
                          <strong>
                            <%end if %>
                          </strong></span> </div></td>
                    </tr>
                     <tr bgcolor="#EEEEEE">
                      <td width="198" class="style56"><div align="right" class="style45 style2">
                        <div align="left">Endereço 
                          de e-mail:</div>
                      </div></td>
                      <td width="591" class="style56"><div align="left"><span class="style45"> <span class="style48">
                        <input name="login" type="text" id="login" size="30" maxlength="50">
                        *</span>
                                    <input name="ult_login" type="hidden" id="ult_login" value="<%=(data)%>">
                                    <input name="qtd_login" type="hidden" id="qtd_login" value="1">
                      </span></div></td>
                    </tr>
                    <tr bgcolor="#EEEEEE">
                      <td class="style56"><div align="right" class="style45 style2">
                        <div align="left">Senha:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style45">
                        <input name="senha" type="password" id="senha" size="8" maxlength="6">
                        </span><span class="style50">*</span><span class="style45"><span class="style50">(máximo 6 caracteres)</span></span></div></td>
                    </tr>
                    <tr bgcolor="#EEEEEE">
                      <td height="22" class="style56"><div align="right" class="style45 style2">
                        <div align="left">Redigite a senha: </div>
                      </div></td>
                      <td class="style56"><div align="left">
                        <input name="red_senha" type="password" id="red_senha" size="8" maxlength="6">
                        <span class="style45"><span class="style50">*(máximo 
                          6 caracteres) </span></span></div></td>
                    </tr>
                  </table>
                  
                  <%if cadastro.EOF then %>
                  <table width="824" height="110" border="0" align="center" cellpadding="0" cellspacing="0" bgcolor="#eeeeee">
                    <tr>
                      <td width="208" height="22" class="style56"><div align="right" class="style56">
                        <div align="left">Titulo: </div>
                      </div></td>
                      <td width="225" class="style56"><div align="left">
                        <select name="titulo" class="style53" id="titulo">
                          <%
set tipo_endereco = server.createobject("ADODB.Recordset")
tipo_endereco.open "select descricao,titulo_codigo from tipos_enderecos order by titulo_codigo asc", conexao
do while not tipo_endereco.eof
%>
                          <option value="<%=(tipo_endereco("titulo_codigo"))%>"><%=(tipo_endereco("descricao"))%></option>
                          <%
    tipo_endereco.movenext
loop
%>
                        </select>
                        <span class="style12 style53 style48">*</span></div></td>
                      <td width="132" class="style56"><div align="left" class="style56">Logradouro:</div></td>
                      <td width="259" class="style56"><div align="justify" class="style56">
                        
                          <div align="left">
                            <input name="logradouro" type="text" id="logradouro" size="20" maxlength="100">
                            <span class="style12 style53 style48">*</span></div>
                      </div></td>
                    </tr>
                    <tr>
                      <td height="22" class="style56"><div align="right" class="style56">
                        <div align="left">Número:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style56">
                        <input name="numero" type="text" id="numero" size="2" maxlength="6">
                        <span class="style12 style53 style48">*</span></span></div></td>
                      <td class="style56"><div align="left"><span class="style56">Complemento:</span></div></td>
                      <td class="style56"><div align="justify" class="style56">
                        <div align="left">
                          <input name="complemento" type="text" id="complemento" size="8" maxlength="50">
                        </div>
                      </div></td>
                    </tr>
                    <tr>
                      <td height="22" class="style56"><div align="right" class="style56">
                        <div align="left">Cep:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style56">
                        <input name="cep" type="text" id="cep" size="8" maxlength="8">
                        <span class="style50">*(somente numeros)</span></span></div></td>
                      <td class="style56"><div align="left" class="style56">Referência:</div></td>
                      <td class="style56"><div align="justify" class="style56">
                        <div align="left">
                          <input name="referencia" type="text" id="referencia" size="10" maxlength="50">
                        </div>
                      </div></td>
                    </tr>
                    <tr>
                      <td height="22" class="style56"><div align="right" class="style56">
                        <div align="left"><span class="style12"><span class="style32"><span class="style57">Estado: </span></span></span></div>
                      </div></td>
                      <td class="style56"><span class="style12"><span class="style57"><!--<span class="style56"><span class="style32">-->
                      <div align="left">
                          <select name="estado" class="style57" id="estado" onChange="cidades(this.value)">
                          <%
                set estado = server.createobject("ADODB.Recordset")
                set cidade = server.createobject("ADODB.Recordset")
                estado.open "select estado_codigo from estados order by estado_codigo asc", conexao
                a = 1
                do while not estado.eof
cidade.open "select municipio, municipio_codigo from municipios where estado_codigo = '"&estado("estado_codigo")&"'", conexao
                    b = 1
                    do while not cidade.eof
%>
                          <script> 
cidade[<%=(a)%>][<%=(b)%>] = new Array();
cidade[<%=(a)%>][<%=(b)%>][0] = "<%=(cidade("municipio_codigo"))%>";
cidade[<%=(a)%>][<%=(b)%>][1] = "<%=(cidade("municipio"))%>";
                        </script>
                        
                          <%                        
                        b = b + 1
                        cidade.movenext
                    loop
                    cidade.close()
%>
                          <option value="<%=(a)%>"><%=(estado("estado_codigo"))%></option>
                          <%
                    estado.movenext
                    a = a + 1
                loop
%>
       
                        </select></div>
                      </span></span></span></span></td>
                      <td class="style56"><div align="left"><span class="style56">Bairro:</span></div></td>
                      <td class="style56"><div align="left"><span class="style12"> <span class="style57"> <span class="style56"><span class="style32">
                      <script>
                      var cidade = new Array();
                      for (i = 1; i<=27; i++)
                      {
                         cidade[i] = new Array();
                         cidade.open();
                      }
                      </script>
                                     
                        </span></span></span></span>
                          <input name="bairro" type="text" id="bairro" size="10" maxlength="20">
                      </div></td>
                    </tr>
                    <tr>
                      <td height="22" class="style56"><div align="right" class="style56">
                        <div align="left">DDD:</div>
                      </div></td>
                      <td class="style56"><div align="left"><span class="style56"><span class="style10">
                        <input name="ddd" type="text" id="ddd" size="3" maxlength="3">
                      </span></span>
                          <input name="telefone" type="text" id="telefone" size="9" maxlength="9">
                          <span class="style12 style53 style48">*</span></div></td>
                      <td class="style56"><div align="left"><span class="style12"><span class="style57"><span class="style32">Cidade:</span></span></span></div></td>
                      <td class="style56"><div align="left"><span class="style12"><span class="style57">
                                 
                      <select name="seleciona_cidade" class="style32" id="seleciona_cidade">
                     
                   <option value=""></option>
                        </select>
                        
                        <span class="style61">*</span></span></span></div></td>
                    </tr>
                  </table>
                  <%end if %>
                  <table width="76" border="0" align="center" cellpadding="0" cellspacing="0">
                    <tr valign="top">
                      <td width="601" height="24"><span class="style5 style1 style44">
                        <center><input name="Submit" type="submit" id="Submit" value="Prosseguir"></center>
                      </span></td>
                    </tr>
                  </table></td>
              </tr>
            </table></td>
          </tr>
        </table>
      </form>
    </div></td>
  </tr>
</table>
</body>
</html>

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora