Avatar billede jones279 Nybegynder
12. august 2005 - 10:47 Der er 16 kommentarer og
1 løsning

Hvordan skifter indhold ved klik på menu?

Hejsa, jeg har lavet et website i ASP - jeg er ikke så stærk til det... Men jeg mangler lige en relativt vigtig detalje! Når jeg nu har bygget hele skellettet op med menu osv. så vil jeg jo gerne have at indholdet i min ene <div> skifter alt efter hvad man trykker på i menuen... Men hvordan gør man det smartest? Er lige begyndt at bygge mine sites med div tags - tidligere har jeg bare brugt tabeller og så en iframe til at skifte indholdet! Men nu er jeg selv stor tilhænger af FireFox - så vil gerne bruge noget smartere og bedre en iframe!

Anyone can teach me that?
Avatar billede keysersoze Ekspert
12. august 2005 - 10:52 #1
du bliver nødt til enten at holde dig til iframes - som jeg dog mener er en dårlig løsning - eller gøre nok ligesom langt størstedelen af alle sider gør; nemlig at opdatere hele siden.

dvs du opdaterer hele siden og går til fx www.domain.dk/default.asp?side=info og så bruger du querystringen "side" til at bestemme hvad der skal vises i din indholds-div.
Avatar billede busschou Praktikant
12. august 2005 - 10:56 #2
Hvorfor ikke benytte en iframe når den nu kan opnå det som ønskes?

Du kan godt skifte indholdet i en div ud, det kan du gøre via javascript
Du kan eksempelvis hvis du har 7 sider have 7 forskellige div, hvor de 6 af dem er stylet med display:none
Så kan du blot i javascript rette stylen så de skiftes til at blive vist

Men jeg vil nu anbefale enten en iframe eller også udskifte det hele som keysersoze siger, jeg kan så bare ikke se nogen grund til ikke at benytte en iframe
Den gør jo netop at man kun henter nødvendig nyt indhold
Avatar billede jones279 Nybegynder
12. august 2005 - 10:57 #3
Jamen det er også perfekt! Præcis det jeg gerne vil... Men hvordan!?
Avatar billede busschou Praktikant
12. august 2005 - 11:01 #4
hvilket af det ? ;o)
Avatar billede jones279 Nybegynder
12. august 2005 - 11:03 #5
Jamen Iframe er ikke understøttet af nok! Jeg vil gerne kunne verificere siden etc... Og som sagt understøttes af alle browsere!! :)
Avatar billede jones279 Nybegynder
12. august 2005 - 11:05 #6
Jeg vil gerne lære det keysersoze omtaler med at opdatere hele siden på den måde der...! :)
Avatar billede keysersoze Ekspert
12. august 2005 - 11:09 #7
hvis linket ser ud som beskrevet - altså www.domain.dk/default.asp?side=info og www.domain.dk/default.asp?side=ommig vil din kode kunne se sådan ud;

If Request.Querystring("side") = "info" Then
  Response.Write "infosiden"
Elseif Request.Querystring("side") = "ommig" Then
  Response.Write "Dette er siden om mig"
Else
  Response.Write "Dette er min forside"
End If
Avatar billede busschou Praktikant
12. august 2005 - 11:10 #8
simpelt sådan her
www.dinside.dk/index.asp?side=side2
--
server.execute request.querystring("side")&".asp"
så går den til
www.dinside.dk/side2.asp
Avatar billede busschou Praktikant
12. august 2005 - 11:10 #9
jones279 >> hvem understøtter ikke iframes?
Avatar billede busschou Praktikant
12. august 2005 - 11:13 #10
hvis du har mange sider, med meget kode, så er server.execute nok en smart måde at hente dem på frem for at have een stor asp side
Jeg løj i øvrigt, for den går jo ikke til side2.asp, men den henter indholdet af side2.asp og udfører det på det ønskede sted i din index
Avatar billede jones279 Nybegynder
12. august 2005 - 11:13 #11
Opera, netscape? Eller er de begyndt på det?
Avatar billede busschou Praktikant
12. august 2005 - 11:15 #12
altså jeg spørger fordi jeg ingen prolemer har med at lave iframes i IE, Netscape, FF og Opera - men jeg tester heller ikke i flere browsere end de fire i nyeste versioner
Eneste problem jeg har er Opera som ikke understøtter style="background-color:transparent" i en iframe, men der er debatten om det er opera eller de andre som tager fejl :o)
Avatar billede jones279 Nybegynder
12. august 2005 - 11:15 #13
Arh, skide smart keyser og busschou! Jeg tror jeg fatter det... Med Keysers kan man beholde alt html/asp koden inde på en side right?

Jeg ved ikke om det her spørgsmål hænger sammen med det andet jeg lige har oploadet - eller om det er ligemeget? http://www.eksperten.dk/spm/639534 Kan man lave dem seperat fra hinanden?
Avatar billede busschou Praktikant
12. august 2005 - 11:16 #14
jo et er samme princip, test på din querystring hvilket sprog det der og tag det udfra det :o)
Avatar billede busschou Praktikant
12. august 2005 - 11:17 #15
www.dinside.dk/default.asp?side=info&sprog=dk
---
if request.querystring("sprog") = "dk" then
  //så er det dansk
else
  //så noget andet
end if
---
hvis der er mange kan du i stedet lave en select case frem for mange if then statements
Avatar billede jones279 Nybegynder
12. august 2005 - 11:24 #16
Lad os fortsætte samtalen i den anden tråd! Post lige igen... Det er vel mere i takt med reglerne...

Jeg smider point til keysersoze her - håber jeg er OK! Han var trods alt først med svaret :)
Avatar billede busschou Praktikant
12. august 2005 - 11:31 #17
hehe hvis det skulle være i takt med reglerne så kan der vel ske to ting
1)
Du har oprettet to spørgsmål som er forskellige, og de løses seperat
2)
Du har oprettet to spørgsmål som handler om det samme, hvorved du skal lukke det ene og ikke må give point for det

Men altså mig et fedt ;o)
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