Avatar billede benneharli Juniormester
15. september 2008 - 21:27 Der er 24 kommentarer og
1 løsning

hent variabel fra adresselinie

Hejsa

Er det muligt at hente en variabel fra en adresselinie?

Jeg har en helt standard html side med en form, men jeg vil gerne kunne indsætte værdier i adresselinien så formen loader med disse værdier når den kommer frem hvis der er nogle, og kommer frem med blanke felter hvis der ikke står nogle værdier i adresselinien.

Eks.

www.noget.com/index.html?value="1" (PHP agtigt)

/Benji
Avatar billede erikjacobsen Ekspert
15. september 2008 - 21:41 #1
Der er mange derude: http://adamv.com/dev/javascript/querystring
Du kan selv google: javascript querystring
Avatar billede olebole Juniormester
16. september 2008 - 02:38 #2
<ole>

<script type="text/javascript">
function getVar(sKey) {
    if (location.search!="") return undefined;
    var oRX = new RegExp("(?:\\?|&)"+sKey+"=(.*?)(?:&|$)", "i"),
    aM = oRX.test(location.search);
    return aM ? decodeURIComponent(RegExp.$1) : undefined;
}

alert(getVar("ib"));
</script>

<a href="?ib=1234">LINK</a>

/mvh
</bole>
Avatar billede benneharli Juniormester
26. september 2008 - 10:52 #3
Hmm... Er ikke helt sikker på jeg forstår implementeringen. Nedenfor er en html side med 2 felter. Hvordan ville du sætte det ind hvis T1 og T2 skulle hentes fra adresselinien hvis de er definerede, og ellers bare være blanke?

------------------------------------------------------

<html>

<head>
<meta http-equiv="Content-Language" content="da">
<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
<title>formpage</title>
</head>

<body>

<form method="POST" action="index.htm">
  <p>Username <input type="text" name="T1" size="20"></p>
  <p>Password <input type="text" name="T2" size="20"></p>
  <p><input type="submit" value="Send" name="B1"><input type="reset" value="Nulstil" name="B2"></p>
</form>

</body>

</html>
Avatar billede erikjacobsen Ekspert
26. september 2008 - 11:04 #4
Avatar billede olebole Juniormester
26. september 2008 - 14:50 #5
Fint eksempel, Erik - men der er ikke nogen modtageside ... og det er vel der, problemet ligger  ;o)

I 'index.htm' skriver f.eks. dette mellem head-taggene:

<script type="text/javascript">
function getVar(sKey) {
    if (location.search!="") return undefined;
    var oRX = new RegExp("(?:\\?|&)"+sKey+"=(.*?)(?:&|$)", "i"),
    aM = oRX.test(location.search);
    return aM ? decodeURIComponent(RegExp.$1) : undefined;
}
var varT1 = getVar("T1");
var varT2 = getVar("T2");

alert(T1 + " :: " + T2);
</script>
Avatar billede erikjacobsen Ekspert
26. september 2008 - 15:33 #6
Joh, Ole, jeg kan ikke se hvad spørgeren skal bruge det til, så det er bare et eksempel.

Kan du se hvilken fejl jeg har rettet i din kode?
Avatar billede benneharli Juniormester
29. september 2008 - 13:44 #7
-> Erik
Det er lige i skabet. En sidste ting... Ville det være muligt med f.eks. appendchild at indsætte noget ekstra, således at siden automatisk sender formen hvis man ønsker det?

f.eks.

http://tralala.dk/index.htm?send=1

gør at der kommer en:

onLoad="document.AuthForm.UserID.focus();" -->
onLoad="document.AuthForm.UserID.focus();send(this.form);"
Avatar billede erikjacobsen Ekspert
29. september 2008 - 14:52 #8
Du kan vel blot lave en if på getVar("send") og sige submit til formen. Men hvorfor ikke gøre det på den side, brugeren kommer fra?
Avatar billede benneharli Juniormester
29. september 2008 - 15:06 #9
Fordi brugeren ikke kommer fra en side... Det er det der er hele problematikken...

/Benji
Avatar billede benneharli Juniormester
29. september 2008 - 15:58 #10
Jeg magter ikke lige at tjekke om "Send" er defineret. "Send" er jo ikke defineret på siden, så jeg skal bare tjekke om det står i adresselinien, og hvis den gør det fyre en send(AuthForm) af.

Anu idea?

/Benji
Avatar billede benneharli Juniormester
29. september 2008 - 16:01 #11
Hov, der var den...

Smid et svar.

/Benji
Avatar billede olebole Juniormester
29. september 2008 - 16:06 #12
erik >> *LoL* ja, jeg kan godt se det. Small - but major bummer!  ;D

if (location.search!="") return undefined;

- skal naturligvis være:

if (location.search=="") return undefined;
Avatar billede erikjacobsen Ekspert
29. september 2008 - 16:48 #13
Ingen point til mig, tak. Jeg samler ikke.

Jah, Ole. Hvad er det nu man siger: "Test før du tænker" ?
Avatar billede olebole Juniormester
29. september 2008 - 17:19 #14
- eller, hvis vi skal vende den lidt politisk, kunne man passende sige:
    "Koncentrer dig om lighederne ... ikke forskellighederne!"  ;D
Avatar billede benneharli Juniormester
30. september 2008 - 09:16 #15
hehe.... i fortsætter bare ;-)

--> Ole
Vil du have nogen point?

/Benji
Avatar billede olebole Juniormester
30. september 2008 - 11:04 #16
Ellers tak, gem du dem bare til næste gang  ;o)
Avatar billede benneharli Juniormester
30. september 2008 - 14:25 #17
oki... tak for hjælpen
Avatar billede benneharli Juniormester
05. oktober 2008 - 22:48 #18
Er det mig der er helt ved siden af, eller virker det kun i IE? Min FireFox er ikke så glad for det...

/Benji
Avatar billede erikjacobsen Ekspert
05. oktober 2008 - 23:19 #19
Det skal jeg ikke kunne sige. Jeg bruger kun Firefox - så der skulle det gerne virke.
Avatar billede benneharli Juniormester
06. oktober 2008 - 06:23 #20
Ah.... Det er jo bare fordi IE gør noget selv, og FF kun gør det man beder den om... Der var kun name på mine felter i formen... Ikke id. Nu virker det ;-)

/Benji
Avatar billede erikjacobsen Ekspert
06. oktober 2008 - 09:08 #21
getElementById virker selvfølgelig kun hvis der et id på elementet (med mindre udviklerne af en browser har spist sjove svampe)
Avatar billede olebole Juniormester
06. oktober 2008 - 13:34 #22
- for så drømmer de nemlig om store, identitetsløse browsersvampe, som spiser sjove udviklere uden navn  =8-O
Avatar billede olebole Juniormester
06. oktober 2008 - 13:35 #23
- og bliver det her for sort, drenge - så napper i bare en kop Café Noir  ;D
Avatar billede benneharli Juniormester
07. oktober 2008 - 06:45 #24
Jeg savner at stå på en alpetop og høre hyrderne jodle... DET savner jeg ;-)
Avatar billede olebole Juniormester
07. oktober 2008 - 14:59 #25
- hmmmm ... det lyder, somom det kræver en vellagret nordtyrolsk fodsvamp, skyllet ned med rå mængder 80% Stroh rom. Jeg springer over!  ;D
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
Vi tilbyder markedets bedste kurser inden for webudvikling

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