Forum - Beitrag anzeigen

CF-Advanced - dynamisches Menü

Icon Pfeil Startseite Icon Pfeil Kategorie Icon Pfeil Suche

Icon Forum Beitrag vom 30.11.2012 20:35 (1789 Aufrufe)
Name: constantin
Titel: dynamisches Menü
Inhalt: Hallo,
ich habe mir ein dyn. Menü irgendwo aus den Tiefen des Internets geholt und zusammengebastelt, das Ergebnis ist hier zu sehen:
http://www.kieznetz.net/entwicklung/MAIN/shopping.cfm?nav_parent=1&iconmenu=1&level=1

Es ist ein Menü, das bis zu drei Gliederungpunkte (Tiefe) z.T. hat, blöd nur, dass alle Ebenen aufgeklappt dargestellt werden und somit die totale Unübersichtlilchkeit da ist :)

Ich muss noch hinzufügen, dass ich den Code fast nicht verstehe, deshalb habe ich nur durch Try and Error herausgefunden, wie ich es schaffe, dass zumindest der erste Gliederungspunkt nur ganz alleine erscheint. Und zwar habe ich das damit hinbekommen:

<cfset URL.hideNode = 101>

Damit auch die folgenden Punkte alleine erscheinen, müsste folgen:
<cfset URL.hideNode = 102>
<cfset URL.hideNode = 103>
Wie kann ich es nun schaffen, der URL.hideNode immer einen neuen Wert zuzuschreiben, der aber gleichzeitig stattfinden muss, weil ja alle Punkte der ersten Ebene beim ersten Aufruf der Seite zugeklappt sein sollen.

Ich habe es damit versucht, geht aber nicht:

<cfquery name="hideNodeJoker" datasource="kieznetz_v12">
Select nav_id FROM t_sectors WHERE nav_parent = 1
</cfquery>
Mit dem nav_parent = 1 werden alle nav_ids mit den Zahlenwerten 101 ... 116 angesprochen (entspricht 16 Punkte der ersten Gliederungsebene und eben diese Zahlenwerte sollen unten gleichzeitig ausgegeben und der URL.hideNode-Variablen zugeordnet werden)

<cfoutput query="hideNodeJoker">
<cfset URL.hideNode = #hideNodeJoker.nav_id#>
</cfoutput>
Das nav_id würde aus einer Tabelle die notwendigen Zahlen 101, 102 .... liefern können!

OK. sieht nach einer Doktorarbeit aus,a ber es geht ja "nur" um die cfset-loop oder output-Geschichte!!

Danke und Grüße und vielen Dank für die Hilfe
(mache schon Monate dran rum)

Constantin

Zur Anschauung der komplette Code der das dyn. Menü liefert:

<cfapplication name="test"
sessionmanagement="yes"
clientmanagement="yes">

<!--- Main Parent --->
<cfparam name="URL.nav_parent" default="1">
<cfquery name="navi" datasource="kieznetz_v12">
SELECT *
FROM t_sectors
WHERE nav_parent = #URL.nav_parent#
ORDER BY nav_txt
</cfquery>

<!--- Laesst Node geöffnet/geschlossen --->
<cfparam name="client.hideNode" default="0">
<!--- add nodes to exclude from list --->
<cfif isDefined("URL.hideNode") AND NOT listFindNoCase(client.hideNode,URL.hideNode)>
<cfset client.hideNode = ListAppend(client.hideNode,URL.hideNode)>
</cfif>
<!--- delete nodes from list --->
<cfif isDefined("URL.DelFromhideNode") AND ListFind(client.hideNode,URL.DelFromhideNode)>
<cfset client.hideNode = ListDeleteAt(client.hideNode,ListFind(client.hideNode,URL.DelFromhideNode))>
</cfif>

<cfoutput query="navi">
<!--- gibts kinder?.. --->
<font style="font-size:15px; font-weight:bold">
<cfquery name="selChild0" datasource="kieznetz_v12">
Select nav_id FROM t_sectors WHERE nav_parent = #navi.nav_id#
</cfquery>

<!--- das hier ist der Gliederpunkt z.Bsp. 1. oder 2. etc.
#CurrentRow#.
--->

<cfif selChild0.RecordCount>

<a href="#cgi.script_name#?menu=#nav_id#&<cfif ListFind(client.hideNode,nav_id)>DelFrom</cfif>hideNode=#nav_id#"></cfif><cfif isDefined("URL.menu") AND URL.menu eq navi.nav_id>
</cfif>#nav_txt#<cfif isDefined("URL.menu") AND URL.menu eq navi.nav_id>

</cfif><cfif selChild0.RecordCount></a></cfif>
</font>
<br>

<CFMODULE TEMPLATE="../INCLUDES/CF_subMenu.cfm" chapter="#CurrentRow#" id="#navi.nav_id#" spaceCounter="0">

</cfoutput>

Antworten
Icon Forum dynamisches Menü (constantin, 30.11.2012 20:35)

Bitte melden Sie sich kostenlos an, um eine Antwort auf diesen Beitrag zu erstellen.


Das deutsche ColdFusion-Forum cfml.de ist das Portal für Einsteiger und Experten zum Thema ColdFusion und der ColdFusion Markup Language (CFML).

© 2017 Webdesign & Hosting: CHC ONLINE Kassel | SOLVA Content-Management-System CMS
Urlaub-Angebote.de - Urlaub mit Bestpreis-Garantie buchen