Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Klurigt problem med menyer!

Postades av 2002-05-08 12:44:01 - Pär Hedberg, i forum asp - allmänt, Tråden har 12 Kommentarer och lästs av 637 personer

Hej på er! Jag använder nedanstående kod för att loopa ut en rekursiv meny som man kan "fälla ut".. (kolla på brostore.rainyday.nu för att se den i action).. Detta fungerar ju suuuper om man kör med frames.. Nu vill jag göra samma sak fast utan frames.. Jag vill ändra koden nedan så att, om querystringen KatID = 34 ex så är hela katalogträdet, från nr 34 "öppnat" om ni förstår vad jag menar..

Vet inte hur jag ska göra.. Sitter fast..

<code>

Function WriteTree(Parent, Unfolder, Times)

Set tree = Server.CreateObject("ADODB.Recordset")
tree.open "SELECT *,(SELECT COUNT(*) FROM Produkter_StrukturDB as SubMeny WHERE SubMeny.Parentid = Produkter_StrukturDB.id AND shopID = "& ShopID &") as SubMenus FROM Produkter_StrukturDB Where Produkter_StrukturDB.ParentID = " & Parent & " AND shopID = "& ShopID &" Order By Produkter_StrukturDB.Rubrik",Connect,adOpenStatic,adLockOptimistic
If Not Tree.EOF Then
Set fldID = tree("id")
Set fldNamn = tree("rubrik")
Set fldSubMenus = tree("SubMenus")
If Not Times = 0 Then
Response.Write vbcrlf&"<TABLE border=0 cellPadding=0 cellSpacing=0 id=folder"&Unfolder-1&" STYLE=display:none>"&vbcrlf
Else
Response.Write vbcrlf&"<TABLE border=0 cellPadding=0 cellSpacing=0>"&vbcrlf
End If
Do
vID = fldID
vText = fldNamn
vSubMenus = fldSubMenus
tree.MoveNext
If vSubMenus > 0 Then
If tree.EOF Then
response.write("<TR>"&vbcrlf&"<TD id=bild"&Unfolder&" WIDTH=15px background=bilder/LastSub.Gif OnClick=""UnFold('folder"&UnFolder&"');PicChange('bild"&UnFolder&"')"">"&vbcrlf&"</TD>")
Else
response.write("<TR>"&vbcrlf&"<TD id=bild"&Unfolder&" WIDTH=15px background=bilder/ItemSub.Gif OnClick=""UnFold('folder"&UnFolder&"');PicChange('bild"&UnFolder&"')"">"&vbcrlf&"</TD>")
End If
Else
If tree.EOF Then
response.write("<TR>"&vbcrlf&"<TD WIDTH=15px background=bilder/Last.Gif>"&vbcrlf&"</TD>")
Else
response.write("<TR>"&vbcrlf&"<TD WIDTH=15px background=bilder/Item.Gif>"&vbcrlf&"</TD>")
End If
End if
If vSubMenus > 0 Then
response.write("<td class=text valign=bottom>")
response.write(vbcrlf&"" & vText & "</td>"&vbcrlf)
response.write("</tr>"&vbcrlf)
Unfolder = Unfolder + 1
Else
response.write("<td class=text valign=bottom>")
response.write(vbcrlf&"" & vText & "</td>"&vbcrlf)
response.write("</tr>"&vbcrlf)
End If
If vSubMenus > 0 Then
If tree.EOF Then
response.write("<TR>"&vbcrlf&"<TD WIDTH=15px></TD>"&vbcrlf&"<TD>")
Else
response.write("<TR>"&vbcrlf&"<TD WIDTH=15px background=bilder/Line.Gif></TD>"&vbcrlf&"<TD>")
End IF
WriteTree vID, Unfolder, Times+1
response.write("</TD></TR>"&vbcrlf&vbcrlf)
End If
Loop Until tree.EOF
Response.Write "</TABLE>"
End If
End Function

<script language="javascript" type="text/javascript">
function UnFold(sObject)
{
ref = document.all[sObject].style;
if(ref.display == ''){
ref.display = 'none';
}else{
ref.display = '';
}
}
function PicChange(sBild)
{
ref = document.all[sBild];
if(ref.background == 'bilder/itemSubOpen.gif'){
ref.background = 'bilder/itemSub.gif'
}else{
ref.background = 'bilder/itemSubOpen.gif'
}
}
</script>

</code>

Detta är lite akut problem! ;)


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-08 16:28:21 - Patrik Berggren

Framesida eller inte. det funkar på samma sätt ändå.
Det du kanske får ändra är target i länkarna, ngt annat stort problem kan jag inte se

cya,
PatrikB


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-08 16:30:57 - Pär Hedberg

Hmm.. Njae..

När du går in på en produktsida, som annars laddades i mainframe, så kommer ju inte trädet vara "öppnat" om man laddar om den sida som trädet är i.. utan då får man gå igenom hela strukturen igen..


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-08 21:11:36 - Patrik Berggren

lägg då även till querystringen som bestämmer vilken meny som ska vara öppnad i varje länk så är det löst ---- då måste förståss hämta in den oxå, men den koden borde redan finnas i frameslösningen ;-)

cya,
PatrikB


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-08 21:20:40 - Pär Hedberg

Nej, det är ju inte löst i & med det.. menyn är ju fortfarande stängd när man laddar om...


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-09 10:20:33 - Patrik Berggren

Du får nog posta all kod för sidan eftersom jag itne kan se vad felet är med den informationen som du gett.

Det ska inte vara några problem att lyfta denna funktion, som egentligen är en sub eftersom den inte returnerar något, från en sida till en annan, frameslösningen eller inte.

cya,
PatrikB


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-09 10:28:16 - Pär Hedberg

hmm.. gå in på www.datorprylar.com.. Det är den menyn som är till vänster..

öppna några rader och ladda om framen, då förstår du hur jag menar.. för om man har både menyn och "innehållet" i samma "frame" så kommer ju menyn att laddas om, och då kommer den inte att vara "uppvikt" eller vad man ska säga..

Behöver alltså nåt som inte gömmer de som är "parent" menyer till den sida man är på..


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-14 00:48:02 - Pär Hedberg

Ingen som lyckas komma på nåt bra sätt??


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-14 07:03:58 - Patrik Berggren

du får lov att lägga på en querystring på varje länk som säger vilken folder som ska öppnas + i body-taggens event onLoad kalla på javascriptfunktionerna som styr menyn. Ngt liknande borde funka:

<%
strUnfold = Request.QueryString("unfold")
strPicChange = Request.QueryString("picchange")
%>

<body bgcolor="#FFFFFF" background="produktbilder/ovriga/0205/09_122029.gif" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" OnLoad="UnFold('<% =strUnfold%>');PicChange('<% =strPicChange%>')">

glöm ej att lägga på querystringsen på länkarna :o)

cya,
PatrikB


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-15 19:13:04 - Pär Hedberg

Hej!

Det svar du ger är ju bra, men en sak bara..

Om jag har ett träd så ser ju det ut såhär (siffrorna är ID numren)

1
|--2
|--3
|--4
| |--5
| |--6

etc..

om då sexan ligger med i querystringen, så syns ju den.. Men då måste ju fyran också öppnas.. Annars syns ju inget ändå..

Hänger du med?! Det jag behöver, är nåt i loopen som går "bakåt" och öppnar allt hela vägen till rooten.. Det är det jag fastnat på..


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-16 13:21:18 - Tommie Severinsson

Skapa en array där du lägger en liten struktur på menyn ser ut när man klickar. (den uppdateras varje gång man klickar på något i menyn osv)

dvs..

om 1,2,3,4 är har gåtts igenom så finns dom i arrayn och när du då uppdaterar din sida så kan du i din onLoad funktion kolla igenom arrayn och visa menyn efter det som finns där..

hur detta kan blir prestanda mässigt är en annan fråga.. ;) Då kan du även ta bort alla anrop mot dina querystringar och bara hela tiden checka status på din array..

äru med?


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-16 13:30:48 - Tommie Severinsson

eller vänta lite.. ;)

ladda arrayn med det som finns i dina querystringar. givetivs.. ;)


Svara

Sv: Klurigt problem med menyer!

Postades av 2002-05-16 20:29:24 - Pär Hedberg

Ok.. Får testa mig fram.. *bävar* ;)


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 832
27 960
271 761
5 554
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies