18. juli 2003 - 22:16Der er
28 kommentarer og 1 løsning
variabler efter adresselinien
Hej Jeg vil gerne have et scipt der kan afgøre hvad der står i adresselinien også alt efter hvad der står tildele en variabel en værdi. Den variablen skal jeg så have over i en ASP variabel bagefter. Jeg har prøvet: ------------- <script language="javascript" type= "text/javascript">
if (location.href=="www.mitdomæne.dk" || location.href=="www.mitdomæne.com") { <% comdk = "en tekst streng som gennem i denne variabel" %> } </script> ---------------- Er det klart nok hvad jeg mener?
Okay. Jeg vil gerne have et script der sætter en variabel til en værdi hvis der i adresse linen står www.navn.dk og står der noget andet i adresselinien skal værdien være noget andet. I "dummy kode" ser det sådan her ud: ----------- if adresselinien = www.navn.dk then var = "en tekst værdi" else var = "en anden tekst værdi" end if ----------------- Når det så er gjort skal jeg have "var" over i ASP sådan her i "dummy kode": -------------- <% ASPvar = var %> -------------- Er du med?
Jamen Request.serverVariables("HTTP_HOST") returnerer "hosten" på siden, jeg har det i frames så en side kan godt være hente fra dk_domænet medens der står COM i adresselinien, derfor skal jeg bruge det fra adresselinien
Tja det skulle man tro, men det lader altså ikke til at være tilfældet.
Et (halvgrimt) hack kunne være at:
1) bestemme href via javascript, 2) placere det som en value bagerst i et url til samme side, 3) loade siden med dette url (ville ligne et reload), og 4) samle værdien op i ASP via Request.QueryString(…)
Da der kun er brug for at bestemme denne en gang under brugerens besøg (nemlig ved start), kan det sikkert gøres sådan at brugeren slet ikke lægger mærke til det.
Ja, det lyder som en fin ide - hvordan gør man det? Jeg har forgæves forsøgt at få fat i adresselinien i et JavaScript med: location.href Så hvis du kunne lave en kode der kunne det du siger, så er du en helt :)
Ang. det med at der er noget der svarer til javascript location i ASP, så ved jeg ikke om det findes, men det er ikke en ServerVariables for det er jo ikke den side hvorpå scriptet udføres vi skal vide noget om, det er jo browserens adresselinie og det ved "serveren" vel ikke noget om - tror jeg da :)
...sådan at den loader i den frame du vælger at vise welcome.asp i. Det kan godt være at jeg vrøvler (er ikke JS ekspert), men bliver min version ikke loadet i hovedvinduet?
Jeg har kun lige lyn testet det, det ligner noget jeg kan bruge. Men jeg skal til Århus om en time, så jeg kigger på det i toget... V Jeg vender tilbage
-- det er adresselinjen i klienten, som bestemmer hvad serveren sender ...
For det er klienten som sender en request til serveren og adresselinjen er præcis det som serveren får oplyst, så det er det den kan reagere på, så du har helt misforstået den sammenhæng ...
Prøv at lave en søgning f.eks., så vil du se, at du får en adresse-linje som indeholder kriterierne for søgningen og du regner vel ikke med, at databasen har sendt sig selv med, så der er noget javascript client-side som sorterer det ?-)
Derfor skal du bare hente variabler fra adresse-linjen ind i dit asp-script og tage fat i dem der -- spørg f.eks. i asp-kategorien, der vil du sikkert få et fyldestgørende svar fra en 15-20 stykker indenfor 10 minutter !-)
Nu har jeg jo ikke en fløjtende fis forstand på asp, og querystring er jo ganske rigtigt det som kommer efter domæne og fil-angivelse, men jeg ved jo, at forskellige småfirmaer, som f.eks. det der lille i Seattle som bla. kører msn og vist har haft en finger med i spillet omkring asp sagtens kan finde ud af, om folk er kommet den ene eller den anden vej ind på et site -- så der må være asp-metoder til det -- jeg ville prøve at søge i asp-kategorien ...
Jeg har brugt "nielle 19/07-2003 10:08:05" til at lave en fornuftig løsning. Jeg takker for jeres hjælp.
Synes godt om
Ny brugerNybegynder
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.