none
ocultar e mostrar informações que vem do banco RRS feed

  • Pergunta

  • Pessoal, boa tarde

     

    Estou tentando fazer que mostre um link e seus sublinks:

     

    Ex.:

     

    CELULAR

    - OI

    - TIM

    - CLARO

     

    INFORMÁTICA

    - Acessórios

     

    E assim vai... isso conseguir fazer. Mas, o que quero é que no titulo CELULAR os subtítulos OI, TIM e CLARO fiquem ocultos até quando alguém clicar em CELULAR e ele expandir as subcategorias ou subtítulos... Tentando vários métodos fiz o seguinte, exemplo:

     

    o meu SQL:

     

    <% strSQL = "SELECT * FROM categoriaspai INNER JOIN Categorias ON categoriaspai.codigo = Categorias.id_pai order by codigo desc"
    Set rsCategoria = Conexao.Execute(strSQL)%>

     

    Coloquei um script que ao clicar em CELULAR ou INFORMÁTICA ele faz ocultar ou mostrar as subcategorias:

     

    <body topmargin="0" leftmargin="0">

    <script language="JavaScript" type="text/javascript">
    function mostraEsconde (qual) {
    if (document.getElementById(qual).style.display == "none") {
    document.getElementById(qual).style.display= "";
    }
    else {
    document.getElementById(qual).style.display = "none";
    }
    }
    </script>
     

    Agora vem o restante que da LOOP dando esse efeito, tipo:

    CELULAR

    - OI

    - TIM

    Vejam:

     

    <%
    conta = 0

    While Not rsCategoria.EOF

    codigo = rsCategoria("codigo")
    nome = rsCategoria("Categoriaspai")
    subnome = rsCategoria("Categoria")

    conta = conta +1%>

    <%

    If conta = 1 Then
    %>

     

    Nessa parte abaixo mostrará os títulos, exemplo: CELULAR:

     

    <table id="AutoNumber5" style="BORDER-COLLAPSE: collapse" borderColor="#111111" height="21" cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr>
    <td width="100%" height="1"><img src="imagens/linhamenu1.jpg" border="0"></td>
    </tr>
    <tr>
    <td width="100%" height="1"><font face="Impact" color="#96BF19" size="5">
    <a href="#" onClick="mostraEsconde('exemplo<%=codigo%>');" style="text-decoration: none"><font color="#96BF19"><%=nome%></font></a></font></td>
    </tr>
    </tr>
    </table>

    <%
    End If %>

     

    Essa parte mostra os subtítulos ou subcategorias de CELULAR:

    <div align="left" id="exemplo<%=codigo%>" style="display: none;">
    <table style="BORDER-COLLAPSE: collapse" borderColor="#111111" height="1" cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr >
    <td width="100%" height="1"><img src="imagens/linhamenu1.jpg" border="0"></td>
    </tr>
    <td width="100%" height="38"><font face="Impact" color="#ab9474" size="4">
    <a href="buscaemlinks.asp?pesquisa=<%=rsCategoria("COD_Categoria")%>" style="text-decoration: none"><font color="#AB9474">- <%=subnome%></font></a></font></td>
    </tr>
    </table>
    </div>


    <%rsCategoria.MoveNext

    If Not rsCategoria.EOF Then
    If rsCategoria("codigo") <> codigo Then
    conta = 0
    End If
    End If
    Wend
    %>

     

    Mas até aí tudo bem, o problema é que quando clico em CELULAR ele só exibi o subtítulo chamado - OI ou CLARO, mas não exibi todos os subtítulos chamado: - OI, - TIM, - CLARO e etc.

     

    Como faço para que mostre todo subtítulos de cada titulo? Pois se tiro esse script de ocultar ele mostra todos os subtítulos correspondente de cada titulo, mas a exibição fica fixa e quando coloco o javascript para ocultar e mostrar, ele acaba ocultando sim, mas na hora de mostrar só mostra um subtítulo... Como resolver isso??

     

    Muito obrigado!

    Marcelo

     

    sábado, 20 de setembro de 2008 16:07

Todas as Respostas

  • Pessoal conseguir! O código está todo igual! Só mudei o final para o exemplo que vou mostrar abaixo:

     

    <div id="exemplo<%=codigo%>" style="display: none;">
    <%
    End If%>

    <table   style="BORDER-COLLAPSE: collapse" borderColor="#111111" height="1" cellSpacing="0" cellPadding="0" width="100%" border="0">
    <tr  >
        <td   width="100%" height="1"><img src="imagens/linhamenu1.jpg" border="0"></td>
      </tr>
        <td   width="100%" height="38"><font face="Impact" color="#ab9474" size="4">
        <a href="buscaemlinks.asp?pesquisa=<%=rsCategoria("COD_Categoria")%>" style="text-decoration: none"><font color="#AB9474">- <%=subnome%></font></a></font></td>
    </tr>
    </table>

     

    <%rsCategoria.MoveNext
    If Not rsCategoria.EOF Then
    If rsCategoria("codigo") <> codigo Then%>
    </div>
    <%
    conta = 0
    End If
    End If
    Wend
    %>

    Mas agora eu queria saber como manter a seção aberta? Tipo, a pessoa clica em CELULAR e exibi os subtítulos: - OI, - TIM, - Claro e quando alguém clica em TIM ele vai para página com os produtos da TIM mas os titulos e subtítulos devem ficar aberto extatamente em CELULAR que foi o qual a pessoa clicou antes para abrir, como fazer?

     

    Alguém sabe?

     

    Obrigado!

    sábado, 20 de setembro de 2008 17:43
  • Tenta passar um parâmetro(eu passaria por querystring) para a página que faça com que a função seja executada quando a página for carregada.
    terça-feira, 30 de setembro de 2008 21:04