Jag håller på att göra en meny som hämtar Huvudrubriker och underrubriker från en accessdatabas. Jag vill att dessa loopas ut i stilen:
Huvudrubrik 1
Huvudrubrik 2
-Underrubrik 2.1
-Underrubrik 2.2
Huvudrubrik 3
-Underrubrik 3.1
-Underrubrik 3.1
Huvudrubrik 4
Huvudrubrik 4
Huvudrubrik 4
-Underrubrik 4.1
-Underrubrik 4.2
-Underrubrik 4.3
Jag vill också att underrubrikerna skall gömmas i första skedet, för att expanderas när man klickar på Huvudrubrikerna.
Databasen ser ut så här:
MenyID
Rubrik
Huvudrubrik (=0 om huvudrubrik, siffra som motsvarar huvudrubrikens menyid om underrubrik)
Ordning -vilken ordning de ska visas
Visa - för att kunna stänga av en viss rubrik utan att ta bort den
Länk - den adressen som länken ska leda till, huvudrubriker med underrubriker ska ju som sagt inte göra nåt, de huvudrubriker utan underrubrik ska ha vanlig länk.
Kod för expanderbar meny har jag, en javascript... kan jag använda den på ett enkelt sätt, hur skulle koden se ut?
<script language="JavaScript">
function visadolj1(obj) {
if(obj.style.display=='none') {
obj.style.display='block'
var x = 1
}
else {
obj.style.display='none'
var x = 2
}
}
etc...
</script>
----
<div id="huvud" onclick="visadolj1(u1)">
<div id="u1" style="display: none">
Hoppas ni förstår och kan hjälpa mig. :-)
SebbeMedlem sedan jan. 20032 285 inlägg Är inte helt hundra på hur du vill använda de olika fälten, men detta funkar ungefär som jag tror att du vill i alla fall.
<html>
<head>
<script language="JavaScript">
<!--
function visadolj1(obj) {
if(obj.style.display=='none') {
obj.style.display='block'
var x = 1
}
else {
obj.style.display='none'
var x = 2
}
}
//-->
</script>
</head>
<body>
<%
Set objConn = Server.CreateObject("ADODB.Connection")
objConn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("db.mdb")
strSQL = "SELECT * FROM tblRubrik WHERE CBool(Visa) = True AND Huvudrubrik = 0 ORDER BY Ordning"
Set objRS = objConn.Execute(strSQL)
If NOT objRS.EOF Then
Do Until objRS.EOF
intCount = intCount + 1
strSQL = "SELECT * FROM tblRubrik WHERE CBool(Visa) = True AND Huvudrubrik = " & objRS("MenyID") & " AND NOT Huvudrubrik = 0 ORDER BY Rubrik"
Set objUnderRubrik = objConn.Execute(strSQL)
If NOT objUnderRubrik.EOF Then
Do Until objUnderRubrik.EOF
If intUnderCount = 0 Then
Response.Write("<div id=""huvud" & intCount & """ onclick=""visadolj1(u" & intCount & ")"">" & objRS("Rubrik") & "</div>" & vbCrLf)
Response.Write("<div id=""u" & intCount & """ style=""display: none"">" & vbCrLf)
End If
Response.Write(" - <a href=""" & objUnderRubrik("Länk") & """>" & objUnderRubrik("Rubrik") & "</a><br>" & vbCrLf)
objUnderRubrik.MoveNext
intUnderCount = intUnderCount + 1
If objUnderRubrik.EOF Then
Response.Write("</div>" & vbCrLf)
intUnderCount = 0
End If
Loop
Else
Response.Write("<a href=""" & objRS("Länk") & """>" & objRS("Rubrik") & "</a><br>")
End If
objUnderRubrik.Close : Set objUnderRubrik = Nothing
objRS.MoveNext
Loop
End If
objRS.Close : Set objRS = Nothing
objConn.Close : Set objConn = Nothing
%>
</body>
</html>
"Demo"
Databas