Avatar billede whitestone Nybegynder
07. juli 2004 - 23:30 Der er 17 kommentarer og
1 løsning

Loop gennem menu system med sub menuer og <div>

Hej

Jeg har følgende til at vise mine websider:

page_id  - som er hver sides ID.
parent_page_id  - som som er ID'en på den forrige side.
order  - som er sidernes rækkefølge i hver menu/sub-menu
title  - som er sidernes tittel.

Jeg vil gerne have skrevet noget lign. det efterfølgende eks. ud med response.write så det kommer til at stå rigtig.

Problemet er <DIV> som jeg får sat forkert når jeg looper ned igennem sub menuerne.


eks.:

<DIV class=menuBar style='WIDTH: 80%'>
<A class=menuButton onmouseover="buttonMouseover(event, 'Home');" onclick="return buttonClick(event, 'Home');" HREF=Home>Home</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'webhotel');" onclick="return buttonClick(event, 'webhotel');" HREF=webhotel>webhotel</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'Kontakt');" onclick="return buttonClick(event, 'Kontakt');" HREF=Kontakt>Kontakt</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'Service');" onclick="return buttonClick(event, 'Service');" HREF=Service>Service</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'Domaene');" onclick="return buttonClick(event, 'Domaene');" HREF=Domaene>Domaene</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'webCMS');" onclick="return buttonClick(event, 'webCMS');" HREF=webCMS>webCMS</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'Revilution');" onclick="return buttonClick(event, 'Revilution');" HREF=Revilution>Revilution</A>
</DIV>

<DIV class=menu id=Home onmouseover=menuMouseover(event)></DIV>
<DIV class=menu id=webhotel onmouseover=menuMouseover(event)></DIV>
<DIV class=menu id=Kontakt onmouseover=menuMouseover(event)>
<A class=menuItem HREF="default.asp?active_page_id=30" TARGET="_self">Betingelser</A>
<DIV class=menu id=Betingelser ></DIV>
</DIV>
<DIV class=menu id=Service onmouseover=menuMouseover(event)></DIV><DIV class=menu id=Domaene onmouseover=menuMouseover(event)></DIV><DIV class=menu id=webCMS onmouseover=menuMouseover(event)></DIV><DIV class=menu id=Revilution onmouseover=menuMouseover(event)><A class=menuItem onmouseover="menuItemMouseover(event, 'Konceptet');" onclick="return false;" href=Konceptet><SPAN class=menuItemText>Konceptet</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A><DIV class=menu id=Konceptet><A class=menuItem HREF="default.asp?active_page_id=37" TARGET="_self">Sikkerhed</A><DIV class=menu id=Sikkerhed></DIV><A class=menuItem HREF="default.asp?active_page_id=38" TARGET="_self">Teknik</A><DIV class=menu id=Teknik></DIV><A class=menuItem HREF="default.asp?active_page_id=39" TARGET="_self">Livsstil</A><DIV class=menu id=Livsstil></DIV></DIV><A class=menuItem onmouseover="menuItemMouseover(event, 'Loesninger');" onclick="return false;" href=Loesninger><SPAN class=menuItemText>Loesninger</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A><DIV class=menu id=Loesninger><A class=menuItem HREF="default.asp?active_page_id=40" TARGET="_self">Bascic_Moduler</A><DIV class=menu id=Bascic_Moduler></DIV><A class=menuItem HREF="default.asp?active_page_id=41" TARGET="_self">Fremtidige</A><DIV class=menu id=Fremtidige></DIV></DIV><A class=menuItem onmouseover="menuItemMouseover(event, 'Ny_bruger');" onclick="return false;" href=Ny_bruger><SPAN class=menuItemText>Ny_bruger</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A><DIV class=menu id=Ny_bruger><A class=menuItem HREF="default.asp?active_page_id=42" TARGET="_self">Betingelser</A><DIV class=menu id=Betingelser></DIV></DIV><A class=menuItem HREF="default.asp?active_page_id=44" TARGET="_self">Priser</A><DIV class=menu id=Priser></DIV><A class=menuItem HREF="default.asp?active_page_id=35" TARGET="_self">Presse</A><DIV class=menu id=Presse></DIV></DIV>



<P><!-- Menu bar. --></P>
<DIV class=menuBar style="WIDTH: 80%">
<A class=menuButton onmouseover="buttonMouseover(event, 'fileMenu');" onclick="return buttonClick(event, 'fileMenu');" href="http://">File</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'editMenu');" onclick="return buttonClick(event, 'editMenu');" href="http://">Edit</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'viewMenu');" onclick="return buttonClick(event, 'viewMenu');" href="http://">View</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'toolsMenu');" onclick="return buttonClick(event, 'toolsMenu');" href="http://">Tools</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'optionsMenu');" onclick="return buttonClick(event, 'optionsMenu');" href="http://">Options</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'helpMenu');" onclick="return buttonClick(event, 'helpMenu');" href="http://">Help</A>
</DIV>

<!-- File Under menus. -->
<DIV class=menu id=fileMenu onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">File Menu Item 1</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'fileMenu2');" onclick="return false;" href="http://"><SPAN class=menuItemText>File Menu Item 2</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">File Menu Item 3</A>
<A class=menuItem href="http://blank.html">File Menu Item 4</A>
<A class=menuItem href="http://blank.html">File Menu Item 5</A>
<A class=menuItem href="http://blank.html">File Menu Item 6</A> </DIV>

<!-- File sub menus. -->
<DIV class=menu id=fileMenu2>
<A class=menuItem href="http://blank.html">File Menu 2 Item 1</A>
<A class=menuItem href="http://blank.html">File Menu 2 Item 2</A> </DIV>

<!-- Edit Under menus. -->
<DIV class=menu id=editMenu onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Edit Menu Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'editMenu3');" onclick="return false;" href="http://"><SPAN class=menuItemText>Edit Menu Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Edit Menu Item 4</A>
<A class=menuItem href="http://blank.html">Edit Menu Item 5</A> </DIV>

<!-- Edit sub menus. -->
<DIV class=menu id=editMenu3 onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'editMenu3_3');" onclick="return false;" href="http://"><SPAN class=menuItemText>Edit Menu 3 Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 4</A>
</DIV>

<DIV class=menu id=editMenu3_3>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 2</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 3</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 4</A>
</DIV>

<!-- View Under menus. -->
<DIV class=menu id=viewMenu>
<A class=menuItem href="http://blank.html">View Menu Item 1</A>
<A class=menuItem href="http://blank.html">View Menu Item 2</A>
<A class=menuItem href="http://blank.html">View Menu Item 3</A> </DIV>

<!-- Tools Under menus. -->
<DIV class=menu id=toolsMenu onmouseover=menuMouseover(event)>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu1');" onclick="return false;" href="http://"><SPAN class=menuItemText>Tools Menu Item 1</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Tools Menu Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu Item 3</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu4');" onclick="return false;" href="http://"><SPAN class=menuItemText>Tools Menu Item 4</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Tools Menu Item 5</A> </DIV>

<!-- Tools sub menus. -->
<DIV class=menu id=toolsMenu1>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 4</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 5</A>
</DIV>

<DIV class=menu id=toolsMenu4 onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Tools Menu 4 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 4 Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu4_3');" onclick="return false;" href="http://blank.html"><SPAN class=menuItemText>Tools Menu 4 Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
</DIV>

<DIV class=menu id=toolsMenu1>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 4</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 5</A>
</DIV>

<DIV class=menu id=toolsMenu4_3>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 4</A>
</DIV>

<DIV class=menu id=optionsMenu>
<A class=menuItem href="http://blank.html">Options Menu Item 1</A>
<A class=menuItem href="http://blank.html">Options Menu Item 2</A>
<A class=menuItem href="http://blank.html">Options Menu Item 3</A>
</DIV>

<DIV class=menu id=helpMenu>
<A class=menuItem href="http://blank.html">Help Menu Item 1</A>
<A class=menuItem href="http://blank.html">Help Menu Item 2</A>
<A class=menuItem href="http://blank.html">Help Menu Item 3</A> </DIV>

------------------------------------------------

Jeg har ind til videre følgende kode:

<%
    Function BygUnderMenu(parent_page_id)
        UnderSQL = "SELECT page_id, title FROM pages WHERE parent_page_id = " & parent_page_id & " ORDER BY [pos]"
        Call OpenRS(Conntemp,UnderSQL,UnderRS)
       
    ' Under menus

        While Not UnderRS.EOF

       
            If CountSubs(UnderRS("page_id")) > 0 Then
           
                Response.Write "<A class=menuItem onmouseover=""menuItemMouseover(event, '" & UnderRS("title") & "');"" onclick=""return false;"" href="& UnderRS("title") &"><SPAN class=menuItemText>" & UnderRS("title") & "</SPAN><SPAN class=menuItemArrow>â–¶</SPAN></A>"
           
            Else
                Response.Write "<A class=menuItem HREF=""" & "default.asp?active_page_id=" & UnderRS("page_id") & """ TARGET=""_self"">" & UnderRS("title") & "</A>"

            End If


       

                Response.Write "<DIV class=menu id=" & UnderRS("title") & ">"
                BygUnderMenu UnderRS("page_id")               
                Response.Write "</DIV>"
   

            UnderRS.MoveNext       


               
               
   

        Wend

    End Function

    Function CountSubs(parent_page_id)
        CountSQL = "SELECT page_id FROM pages WHERE parent_page_id = " & parent_page_id & ""
        Call OpenRS(Conntemp,CountSQL,CountRS)
        CountSubs = CountRS.RecordCount
    End Function

    LavDatabase Conntemp

    SQL = "SELECT page_id, title FROM pages WHERE parent_page_id = 0 ORDER BY [pos]"
    Call OpenRS(Conntemp,SQL,RS)


    If RS.BOF AND RS.EOF Then
        Response.Write "FEJL"
    Else
           
    ' Menu bar
        RS.MoveFirst
            Response.Write "<DIV class=menuBar style='WIDTH: 10%'>"       
        While Not RS.EOF
   

            Response.Write "<A class=menuButton onmouseover=""buttonMouseover(event, '" & RS("title") & "');"" onclick=""return buttonClick(event, '" & RS("title") & "');"" HREF=" & RS("title") & ">" & RS("title") & "</A>"

            RS.MoveNext

        Wend
            Response.Write "</DIV>"

    ' Main menus

       
        RS.MoveFirst
           
        While Not RS.EOF
            Response.Write "<DIV class=menu id=" & RS("title") & " onmouseover=menuMouseover(event)>"
            BygUnderMenu RS("page_id")               
            Response.Write "</DIV>"
            RS.MoveNext

        Wend

    End If
   
    LukDatabase Conntemp
%>

-------------

Det går også fint indtil jeg skal til at lave

BygUnderMenu UnderRS("page_id") , her bliver <DIV> erne blandet sammen.
Avatar billede whitestone Nybegynder
07. juli 2004 - 23:36 #1
Undskyld - Der kom lidt for meget med af eksemplet :-(

Det var kun følgende jeg ønsker skrevet ud:

<P><!-- Menu bar. --></P>
<DIV class=menuBar style="WIDTH: 80%">
<A class=menuButton onmouseover="buttonMouseover(event, 'fileMenu');" onclick="return buttonClick(event, 'fileMenu');" href="http://">File</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'editMenu');" onclick="return buttonClick(event, 'editMenu');" href="http://">Edit</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'viewMenu');" onclick="return buttonClick(event, 'viewMenu');" href="http://">View</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'toolsMenu');" onclick="return buttonClick(event, 'toolsMenu');" href="http://">Tools</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'optionsMenu');" onclick="return buttonClick(event, 'optionsMenu');" href="http://">Options</A>
<A class=menuButton onmouseover="buttonMouseover(event, 'helpMenu');" onclick="return buttonClick(event, 'helpMenu');" href="http://">Help</A>
</DIV>

<!-- File Under menus. -->
<DIV class=menu id=fileMenu onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">File Menu Item 1</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'fileMenu2');" onclick="return false;" href="http://"><SPAN class=menuItemText>File Menu Item 2</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">File Menu Item 3</A>
<A class=menuItem href="http://blank.html">File Menu Item 4</A>
<A class=menuItem href="http://blank.html">File Menu Item 5</A>
<A class=menuItem href="http://blank.html">File Menu Item 6</A> </DIV>

<!-- File sub menus. -->
<DIV class=menu id=fileMenu2>
<A class=menuItem href="http://blank.html">File Menu 2 Item 1</A>
<A class=menuItem href="http://blank.html">File Menu 2 Item 2</A> </DIV>

<!-- Edit Under menus. -->
<DIV class=menu id=editMenu onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Edit Menu Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'editMenu3');" onclick="return false;" href="http://"><SPAN class=menuItemText>Edit Menu Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Edit Menu Item 4</A>
<A class=menuItem href="http://blank.html">Edit Menu Item 5</A> </DIV>

<!-- Edit sub menus. -->
<DIV class=menu id=editMenu3 onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'editMenu3_3');" onclick="return false;" href="http://"><SPAN class=menuItemText>Edit Menu 3 Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Edit Menu 3 Item 4</A>
</DIV>

<DIV class=menu id=editMenu3_3>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 1</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 2</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 3</A>
<A class=menuItem href="http://blank.html">Edit Menu 3-3 Item 4</A>
</DIV>

<!-- View Under menus. -->
<DIV class=menu id=viewMenu>
<A class=menuItem href="http://blank.html">View Menu Item 1</A>
<A class=menuItem href="http://blank.html">View Menu Item 2</A>
<A class=menuItem href="http://blank.html">View Menu Item 3</A> </DIV>

<!-- Tools Under menus. -->
<DIV class=menu id=toolsMenu onmouseover=menuMouseover(event)>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu1');" onclick="return false;" href="http://"><SPAN class=menuItemText>Tools Menu Item 1</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Tools Menu Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu Item 3</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu4');" onclick="return false;" href="http://"><SPAN class=menuItemText>Tools Menu Item 4</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
<A class=menuItem href="http://blank.html">Tools Menu Item 5</A> </DIV>

<!-- Tools sub menus. -->
<DIV class=menu id=toolsMenu1>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 4</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 5</A>
</DIV>

<DIV class=menu id=toolsMenu4 onmouseover=menuMouseover(event)>
<A class=menuItem href="http://blank.html">Tools Menu 4 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 4 Item 2</A>
<A class=menuItem onmouseover="menuItemMouseover(event, 'toolsMenu4_3');" onclick="return false;" href="http://blank.html"><SPAN class=menuItemText>Tools Menu 4 Item 3</SPAN><SPAN class=menuItemArrow>&#9654;</SPAN></A>
</DIV>

<DIV class=menu id=toolsMenu1>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 4</A>
<A class=menuItem href="http://blank.html">Tools Menu 1 Item 5</A>
</DIV>

<DIV class=menu id=toolsMenu4_3>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 1</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 2</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 3</A>
<A class=menuItem href="http://blank.html">Tools Menu 4-3 Item 4</A>
</DIV>

<DIV class=menu id=optionsMenu>
<A class=menuItem href="http://blank.html">Options Menu Item 1</A>
<A class=menuItem href="http://blank.html">Options Menu Item 2</A>
<A class=menuItem href="http://blank.html">Options Menu Item 3</A>
</DIV>

<DIV class=menu id=helpMenu>
<A class=menuItem href="http://blank.html">Help Menu Item 1</A>
<A class=menuItem href="http://blank.html">Help Menu Item 2</A>
<A class=menuItem href="http://blank.html">Help Menu Item 3</A> </DIV>
Avatar billede hepou Nybegynder
08. juli 2004 - 01:54 #2
Har ikke lige læst alt dit igennem, men forestiller mig at du har en db, hvor du skal have trukket nogle data ud til menuen. En overmenu og nogle undermenuer.

Jeg har på et tidspunkt lavet dette og tænkte om du kunne bruge noget af det:

******************************JavaScript*****************

<script type="text/javascript">
    if (document.getElementById){
        document.write('<style type="text/css">\n')
        document.write('.submenu{display: none;}\n')
        document.write('</style>\n')
    }
   
    function SwitchMenu(obj){
        if(document.getElementById){
            var el = document.getElementById(obj);
            var ar = document.getElementById("masterdiv").getElementsByTagName("span");
           
            if(el.style.display != "block"){
                for(var i=0; i<ar.length; i++){
                    if(ar[i].className == "submenu"){
                        ar[i].style.display = "none";
                    }
                }
                el.style.display = "block";
            }
            else{
                el.style.display = "none";
            }
        }
    }
</script>


********************************'ASP:*********************

<div id="masterdiv">
    <%
        sql = "SELECT * FROM page ORDER BY Page;"
        set rs = conn.Execute(sql)
               
        while not rs.EOF
       
        sql2 = "SELECT * FROM PageSection WHERE PageID = " & rs("PageID") & ";"
        set rs2 = conn.Execute(sql2)   
    %>
            <div class="menutitle" onClick="SwitchMenu('sub<%=rs("PageID")%>')">
                <%
                    response.write rs("Page")                    
                %>
            </div>
            <span class="submenu" id="sub<%=rs("PageID")%>">
                <% while not rs2.EOF %>
                    &nbsp;&nbsp;&nbsp;- <% response.write rs2("SectionName") %><br>
                <%
                    rs2.movenext
                    wend
                %>
            </span>
    <%                           
            rs.movenext
        wend
    %>           
</div>

*******************************


:)
Avatar billede hepou Nybegynder
08. juli 2004 - 01:56 #3
og hvis du kan bruge skal du ikke give mig så mange point... så heller lidt karma ;)
Avatar billede hepou Nybegynder
08. juli 2004 - 01:58 #4
JavaScriptet bruges til at lukke andre menuer så du kun har submenu på den du har åben. Hvis du ønsker alle åbent hele tiden skal du nøjes med ASP-scriptet

:)
Avatar billede hepou Nybegynder
08. juli 2004 - 02:07 #5
nu har jeg ikke nogen links på mine i det her eksempel, men det kan jo bare sættes ind ved at udtrække det fra db:

<A href="<%=rs2("Link")%>"><% response.write rs2("SectionName") %></A>
Avatar billede whitestone Nybegynder
08. juli 2004 - 18:06 #6
Hej

Kan ikke lige se om det kan bruges ?

Laver du menuen ud fra 2 tables i db ?

Hvordan connecter du til din dB ?

Men hvis du er min kommentar 07/07-2004 23:36:38 så er - <!-- Menu bar. --> main menuen som altid kan ses - og <!-- Under menus. --> er undermenuen lig under main menuen - og <!-- sub menus. --> de efterfølgende undermenuer.
Avatar billede hepou Nybegynder
08. juli 2004 - 23:09 #7
ja, jeg har 2 tabeller.

Den ene "page" indeholder et PageId og et PageName (er brugt til CMS-system) Disse svare til dine Mainmenuer.
Den anden tabel (PageSection) indeholder et PageID (til at flette de 2 sammen), et SectionNumber (jeg sorterer afsnit på dette)og et SectionName (svarende til din submenu)

Conn til DB har jeg lagt ud i en fil for sig (conn.asp):

<%
    Set conn = Server.CreateObject("ADODB.Connection")
    conn.Open = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source = " & Server.MapPath("../db/db.mdb")
%>


forstår jeg dig ret hvis jeg siger at din menu har 3 nivauer?? Min har kun to!

Som tidligere nævnt har jeg ikke læst din kode igennem (synes der lidt meget og det står lidt sammengnidret) ;)

:)
Avatar billede hepou Nybegynder
08. juli 2004 - 23:20 #8
hmm, har jeg måske misforstået spørgsmålet?? :/

er det du ønsker at koden skal udskrives??

Kan du forklare lidt nærmere med at DIV'erne blandes sammen??
Avatar billede whitestone Nybegynder
08. juli 2004 - 23:31 #9
Hej

Jeg tror jeg har forstået hvordan din virker, men jeg kan (næsten) have uendelig niveauer.

Mit problem består faktisk i at jeg får udskrevet <div>bla. m.m</div> forkert inde i hinanden når jeg går i undermenuerne så jeg f.eks får:

<DIV class=menuItem>
Menu tekst m. m
<DIV class=menu>Under menu tekst m.m</DIV>
</DIV>
Avatar billede whitestone Nybegynder
08. juli 2004 - 23:33 #10
I stedet burde  jeg have følgende skrevet ud:

<DIV class=menuItem>
Menu tekst m. m
</DIV>

<DIV class=menu>
Under menu tekst m.m
</DIV>
Avatar billede hepou Nybegynder
08. juli 2004 - 23:52 #11
Response.Write "<DIV class=menu id=" & UnderRS("title") & ">"
    BygUnderMenu UnderRS("page_id")  '<-- Her kalder du funktionen igen inden den bliver færdig med at loope. Derved vil den vente med at skrive den sidste linie
    Response.Write "</DIV>"

Tror det kan være det (har kun lige hurtige kigget på det. hvis det ikke er det vil jeg gerne kigge nærmere på det, men tager på ferie i morgen og en uge frem ;))

:)
Avatar billede whitestone Nybegynder
09. juli 2004 - 06:02 #12
08/07-2004 23:52:44 Ja det er lige præcis det der er mit problem.

Hvordan får jeg den til at kalde

Response.Write "<DIV class=menu id=" & UnderRS("title") & ">"
    BygUnderMenu UnderRS("page_id")
Response.Write "</DIV>

altså noget med loop i loop og hvor så <DIV>'erne passer

God ferie
Avatar billede hepou Nybegynder
09. juli 2004 - 11:45 #13
kan du ikke gøre det ved at lægge det ud i to funktioner som nedenstående?!



  Function BygUnderMenu(parent_page_id)
        UnderSQL = "SELECT page_id, title FROM pages WHERE parent_page_id = " & parent_page_id & " ORDER BY [pos]"
        Call OpenRS(Conntemp,UnderSQL,UnderRS)
       
    ' Under menus

        While Not UnderRS.EOF

       
            If CountSubs(UnderRS("page_id")) > 0 Then
           
                Response.Write "<A class=menuItem onmouseover=""menuItemMouseover(event, '" & UnderRS("title") & "');"" onclick=""return false;"" href="& UnderRS("title") &"><SPAN class=menuItemText>" & UnderRS("title") & "</SPAN><SPAN class=menuItemArrow>â–¶</SPAN></A>"
           
            Else
                Response.Write "<A class=menuItem HREF=""" & "default.asp?active_page_id=" & UnderRS("page_id") & " TARGET=""_self"">" & UnderRS("title") & "</A>"

            End If


                HelpBygUnderMenu UnderRS("page_id")           
   

            UnderRS.MoveNext       
 

        Wend
    end Function

    Function HelpBygUnderMenu(pageId)
        Response.Write "<DIV class=menu id=" & UnderRS("title") & ">"
                BygUnderMenu pageId               
                Response.Write "</DIV>"
    end Function
Avatar billede hepou Nybegynder
09. juli 2004 - 11:46 #14
og takker ;)
Avatar billede hepou Nybegynder
09. juli 2004 - 11:48 #15
øhh, glem lige det forslag - det vil jo blive det samme (min hjerne er vist allerede kørt)
:/
Avatar billede hepou Nybegynder
09. juli 2004 - 12:20 #16
Er det noget som nedenstående du er på jagt efter??

  Function BygUnderMenu(parent_page_id)
        UnderSQL = "SELECT page_id, title FROM pages WHERE parent_page_id = " & parent_page_id & " ORDER BY [pos]"
        Call OpenRS(Conntemp,UnderSQL,UnderRS)
       
    ' Under menus
        While Not UnderRS.EOF
           
                Response.write "<DIV class=menu id=" & UnderRS("title") & ">"
           
                       
            If CountSubs(UnderRS("page_id")) > 0 Then
           
                Response.Write "<A class=menuItem onmouseover=""menuItemMouseover(event, '" & UnderRS("title") & "');"" onclick=""return false;"" href="& UnderRS("title") &"><SPAN class=menuItemText>" & UnderRS("title") & "</SPAN><SPAN class=menuItemArrow>â–¶</SPAN></A>"
           
            Else
                Response.Write "<A class=menuItem HREF=""" & "default.asp?active_page_id=" & UnderRS("page_id") & " TARGET=""_self"">" & UnderRS("title") & "</A>"

            End If
           
                 
                Response.Write "</DIV>"         
   

            UnderRS.MoveNext       
 

        Wend
       
    end Function

Er blevet lidt forvirret af din kode. Du kalder jo funktionen inden du når UnderRS.MoveNext. Herved vil du jo hele tiden kalde funktionen med samme id. :S

:)
Avatar billede whitestone Nybegynder
09. juli 2004 - 22:08 #17
Desværre er det ikke lige det jeg har tænkt på :-(

Det skal måske laves på en helt anden måde.

Det jeg ønsker er at men ikke er begrænset til et fast antal af undermenu level f.eks 2 eller 3 men derimod i princippet kan have lige så mange undermenu levels som man ønsker.

Først skal man have main menuen (parent_page_id = 0) som skal "rammes" ind i:

<DIV class=menu id=fileMenu onmouseover=menuMouseover(event)>
Her kommer der til at stå både de tilhørende HREF's og submenuer
</Div>

Herefter skal undermenuerne "rammes ind" i:

<DIV class=menu id=editMenu onmouseover=menuMouseover(event)>
Her kommer der til at stå både de tilhørende HREF's og submenuer
</DIV>


Til sidst skal nederste menu laves:

<DIV class=menu id=fileMenu2>
Her kommer der kun til at stå HREF'
</DIV>

/whitestone
Avatar billede whitestone Nybegynder
07. januar 2005 - 16:52 #18
desværre
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester