Avatar billede kimlarsen1978 Nybegynder
21. maj 2005 - 14:56 Der er 3 kommentarer og
1 løsning

Rekursion - hvilket niveau?

Hejsa
Jeg har en funktion som jeg bruger til at danne min menu med:
******************
Function tjekForUnderpunkter(idTemp)
For j = UBound(arCatIDs) to 0 Step - 1
  if (arParentIDs(j) = idTemp AND not arParentIDs(j) = 0) then
  Response.Write "-"
  Response.Write "<a href=""default.asp?catid="&arCatIDs(j)& "&parentId="& arParentIDs(j) &"""><nobr>"&arCatTitles(j)& "</nobr></a>"
  Response.Write "<br>"
  idTemp2 = arCatIDs(j)
  Call tjekForUnderpunkter(idTemp2)
  end if
Next
End Function
***************************

Linien Response.Write "-" skal sætte en - hver gang jeg går ét niveau ind, men hvordan dælen får jeg det til at virke? Jeg ved godt at som den står nu sker der ingenting, men jeg aner ikke hvordan jeg løser det.

Det skal gerne komme til at se således ud, ex:
**************
Hovedpunkt1
-Underpunkt1.10
-Underpunkt1.11
--underpunkt1.20
---underpunkt1.30
---underpunkt1.31
---underpunkt1.32
--underpunkt1.21
-Underpunkt1.12
-Underpunkt1.13
-Underpunkt1.14
Hovedpunkt2
Hovedpunkt3
Hovedpunkt4
********************

Det jeg har brug for at vide er, hvordan jeg finder frem til hvilket niveau, jeg er på i ovenstående eksempel vil en "niveautæller" skulle give

1,1,2,3,3,3,2,1,1,1

hver plads repræsenterer et kald til funktionen, hvordan styrer jeg om niveautæller skal være = niveautæller+1 eller = niveautæller - 1 ????

Er spørgsmålet klart nok?
Avatar billede nielle Nybegynder
21. maj 2005 - 15:02 #1
Function tjekForUnderpunkter(idTemp, Niveau)
    For j = UBound(arCatIDs) to 0 Step - 1
        if (arParentIDs(j) = idTemp AND not arParentIDs(j) = 0) then
            For N=1 To Niveau
                Response.Write "-"
            Next
            Response.Write "<a href=""default.asp?catid="&arCatIDs(j)& "&parentId="& arParentIDs(j) &"""><nobr>"&arCatTitles(j)& "</nobr></a>"
            Response.Write "<br>"
            idTemp2 = arCatIDs(j)
            Call tjekForUnderpunkter(idTemp2, Niveau+1)
        end if
    Next
End Function
Avatar billede kimlarsen1978 Nybegynder
22. maj 2005 - 15:32 #2
Det var jo det der skulle til :-)
Svar bitte?
Tnx
Avatar billede nielle Nybegynder
22. maj 2005 - 19:48 #3
Svar :^)
Avatar billede kimlarsen1978 Nybegynder
22. maj 2005 - 19:59 #4
Super :-)
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