[JS] Variable uit form halen

Pagina: 1
Acties:

  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Goedemiddag,

Ik zit met een (volgens mij) vrij simpele vraag, ik wil graag een html formuliertje hebben met dropdown boxes en een submit knop...

Op deze manier dus:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<html>
<body>
<form>
<select name="dag">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="maand">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="jaar">
<option value="2006">2006
<option value="2007">2007
<option value="2008">2008
<option value="2009">2009
<option value="etc">etc
</select>

<input type="submit" value="Submit">

</form>
</body>
</html>


Na het klikken op submit moet er een andere html pagina worden opgeroepen op deze manier:

code:
1
document.location.href="/Logs/daily_(" + maand + "." + dag + "." + jaar + "-" + maand + "." + dag + "." + jaar + "-" )/Report.htm"


het is dus de bedoeling dat mbv JS bijvoorbeeld deze pagina aangeroepen kan worden:
\logs\daily_(2.20.2006-2.20.2006)\report.htm

nu doe ik dit met een prompt (dit werkt wel maar is niet handig van wege de datum opmaak):

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<head>
<script type="text/javascript">
function disp_prompt()
{
var date=prompt("Voer de datum in het volgende formaat m(m).d(d).jjjj (Voorbeeld: 13 januari 2006 word ingevoerd als: 1.13.2006)","")
if (date!=null && date!="")
{
document.location.href="/Logs/daily_(" + date + "-" + date + ")/Report.htm"
}
}
</script>
</head>

<form>
<input type="button" onclick="disp_prompt()" value="Klik hier om een report te openen">
</form>


Mijn vraag is dus:
Hoe kan ik van de output van de drop down boxjes een var maken?

Ik heb wel een beetje rond gezocht maar kom er niet echt uit, mijn eigen JS kennis komt helaas niet verder als www.w3schools.com :'(

[ Voor 23% gewijzigd door Jay-v op 23-02-2006 11:17 ]


  • Sappie
  • Registratie: September 2000
  • Laatst online: 08-04 10:58

Sappie

De Parasitaire Capaciteit!

je kan de value van het geselecteerde element in de select uiteraard opvragen:
code:
1
selectReference.options[selectReference.selectedIndex].value

selectReference is dan dus een referentie naar de select box waarvan je de waarde wilt weten.

Specs | Audioscrobbler


  • André
  • Registratie: Maart 2002
  • Laatst online: 08-04 16:23

André

Analytics dude

Over hoe je een waarde uit een selectbox kunt lezen is ontzetten veel te vinden hoor. Wat heb je al geprobeerd?

[search=select value javascript]
[search=select waarde uitlezen]

  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Neej op termen had ik nog niet gezocht ik ga eens kijken of ik er wat tussen kan vinden...
Sappie schreef op donderdag 23 februari 2006 @ 11:21:
je kan de value van het geselecteerde element in de select uiteraard opvragen:
code:
1
selectReference.options[selectReference.selectedIndex].value

selectReference is dan dus een referentie naar de select box waarvan je de waarde wilt weten.
Ik zou eerlijk gezecht niet weten hoe ik dit moet opnemen in mijn JS :+

[ Voor 72% gewijzigd door Jay-v op 23-02-2006 11:32 ]


  • Sappie
  • Registratie: September 2000
  • Laatst online: 08-04 10:58

Sappie

De Parasitaire Capaciteit!

Er is dus echt, zoals Andre al aangeeft, genoeg over te vinden op GoT.. verder is google je grootste vriend :) Een beetje eigen initiatief is nooit weg he :)

Specs | Audioscrobbler


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Door die value in een variabele te stoppen zoals je dat doet met var blabla = ....

Overigens is date een reserved (dacht ik tenminste), dus die zou ik desnoods aanpassen.

Overigens met 118848 zoekresultaten moet er minimaal 1 zijn die je verder helpt. :+

Eigenlijk moet deze dicht, maar ik laat hem even open. Mocht je een oplossing hebben gevonden, dan kan je die alsnog in dit topic plaatsen ;)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Er is inderdaad veel over te vinden, heel veel. echter zijn de meeste topic's die ik te zien krijg een beetje boven mijn niveau gaat :+ Zoals ik al zei mijn kennis van JS is niet zo groot. ik heb nu het volgende:

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<html>
<head>
<script type="text/javascript">

var dag=window.test.dag.options[window.test.dag.selectedIndex].value
var maand=window.test.maand.options[window.test.maand.selectedIndex].value
var jaar=window.test.jaar.options[window.test.jaar.selectedIndex].value

if (dag=? && maand=? && jaar=?) 
{
document.location.href="/Logs/daily_(" + maand + "." + dag + "." + jaar + "-" + maand + "." + dag + "." + jaar + "-" )/Report.htm"
}

</script>
</head>

<body>
<form name="test">
<select name="dag">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="maand">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="jaar">
<option value="2006">2006
<option value="2007">2007
<option value="2008">2008
<option value="2009">2009
<option value="etc">etc
</select>

<input type="submit" value="Submit">

</form>
</body>
</html>


Kan iemand me misschien even verder helpen? wat moet er bij "if (dag=? && maand=? && jaar=?) "
op de plaats van de vraagtekens komen?

[ Voor 102% gewijzigd door Jay-v op 23-02-2006 13:15 ]


  • crisp
  • Registratie: Februari 2000
  • Nu online

crisp

Devver

Pixelated

wat is formname nu weer voor attribuut?

offtopic:
window.location

Intentionally left blank


  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
crisp schreef op donderdag 23 februari 2006 @ 13:02:
wat is formname nu weer voor attribuut?
Whoeps, aangepast

[ Voor 10% gewijzigd door Jay-v op 23-02-2006 13:09 ]


  • Sappie
  • Registratie: September 2000
  • Laatst online: 08-04 10:58

Sappie

De Parasitaire Capaciteit!

spydoggie schreef op donderdag 23 februari 2006 @ 12:59:
Kan iemand me misschien even verder helpen? wat moet er bij "if (dag=? && maand=? && jaar=?) "
op de plaats van de vraagtekens komen?
Dit kan je uiteraard op verschillende manieren oplossen.

Ten eerste zou je ervoor kunnen zorgen dat de combinatie van de drie selectboxen _altijd_ een valide data bevat. Wellicht is dat wat te ingewikkeld voor je.

Ten tweede zijn er vast genoeg mensen geweest die een of andere date validator hebben geschreven in javascript. Daar zou je ook eens naar kunnen zoeken. bijv hier (http://www.google.nl/sear...&btnG=Google+zoeken&meta=)

[ Voor 4% gewijzigd door Sappie op 23-02-2006 13:17 ]

Specs | Audioscrobbler


  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Sappie schreef op donderdag 23 februari 2006 @ 13:17:
[...]

Dit kan je uiteraard op verschillende manieren oplossen.

Ten eerste zou je ervoor kunnen zorgen dat de combinatie van de drie selectboxen _altijd_ een valide data bevat. Wellicht is dat wat te ingewikkeld voor je.

Ten tweede zijn er vast genoeg mensen geweest die een of andere date validator hebben geschreven in javascript. Daar zou je ook eens naar kunnen zoeken. bijv hier (http://www.google.nl/sear...&btnG=Google+zoeken&meta=)
Een validator is niet noodzakelijk voor mij dit kan ik dus zowiezo voorlopig weglaten, maar dan lukt het me nog steeds niet om de pagina zover te krijgen dat ie naar de goede locatie gaat :+

Ik zal waarschijnlijk nog een action aan de submit knop moeten hangen, maar welke?

  • Sappie
  • Registratie: September 2000
  • Laatst online: 08-04 10:58

Sappie

De Parasitaire Capaciteit!

Giet hetgeen je geschreven hebt in een functie en roep die aan middels het onsubmit event van de form?

is verder wel erg basic.. en bovendien toch echt genoeg over te vinden :)

Specs | Audioscrobbler


  • BtM909
  • Registratie: Juni 2000
  • Niet online

BtM909

Watch out Guys...

Sappie schreef op donderdag 23 februari 2006 @ 13:36:
is verder wel erg basic.. en bovendien toch echt genoeg over te vinden :)
Dit hoef je niet in elke post te herhalen :)

Ace of Base vs Charli XCX - All That She Boom Claps (RMT) | Clean Bandit vs Galantis - I'd Rather Be You (RMT)
You've moved up on my notch-list. You have 1 notch
I have a black belt in Kung Flu.


  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Gelukt!
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
<html>
<head>
<script type="text/javascript">

function go_url()
{
    var dag   = document.form.dag.options[document.form.dag.selectedIndex].value;
    var maand = document.form.maand.options[document.form.maand.selectedIndex].value;
    var jaar  = document.form.jaar.options[document.form.jaar.selectedIndex].value;
    document.location.href="/Logs/daily_(" + maand + "." + dag + "." + jaar + "-" + maand + "." + dag + "." + jaar + "-)/Report.htm";
}
</script>
</head>

<body>
<form name="form">
<select name="dag">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="maand">
<option value="1">1
<option value="2">2
<option value="3">3
<option value="4">4
<option value="etc">etc
</select>

<select name="jaar">
<option value="2006">2006
<option value="2007">2007
<option value="2008">2008
<option value="2009">2009
<option value="etc">etc
</select>

<input type="button" value="Submit" onclick="javascript:go_url();">

</form>
</body>
</html>

[ Voor 61% gewijzigd door Jay-v op 23-02-2006 13:49 ]


  • Sappie
  • Registratie: September 2000
  • Laatst online: 08-04 10:58

Sappie

De Parasitaire Capaciteit!

BtM909 schreef op donderdag 23 februari 2006 @ 13:42:
Dit hoef je niet in elke post te herhalen :)
Als de TS er dan ook echt wat mee zou doen niet nee :) verder geef ik em tevens een duw in de goede richting.. soms is het nodig dingen te benadrukken, enja een manier om dingen te benadrukken is door ze te herhalen.
spydoggie schreef op donderdag 23 februari 2006 @ 13:46:
Zo heb ik het dus geprobeerd:

code:
1
2
3
4
5
6
7
8
9
10
11
<script type="text/javascript">

var dag=window.test.dag.options[window.test.dag.selectedIndex].value
var maand=window.test.maand.options[window.test.maand.selectedIndex].value
var jaar=window.test.jaar.options[window.test.jaar.selectedIndex].value

function test()
{
document.location.href="/Logs/daily_(" + maand + "." + dag + "." + jaar + "-" + maand + "." + dag + "." + jaar + "-" )/Report.htm"
}
</script>


code:
1
2
3
<form>
<input type="button" onclick="test()" value="klik">
</form>


:? ik doe toch iets fout
Het lijkt me dat je het assignen van de verschillende variabelen ook pas wilt doen wanneer het formulier gesubmit wordt. Beter neem je die dus op in je functie. Verder zie ik niet in waarom de functie test() niet aangeroepen zou worden na het klikken van de button. Krijg je nog javascript foutmeldingen ofzo?

(btw firefox biedt standaard een javascript console met redelijk gedetailleerde foutmeldingen.. kun je wellicht ook wat mee)
edit:
ahh.. tis al gelukt :)

[ Voor 75% gewijzigd door Sappie op 23-02-2006 13:53 ]

Specs | Audioscrobbler


  • Jay-v
  • Registratie: Januari 2002
  • Niet online

Jay-v

Uhhhh......

Topicstarter
Hehe jup tis al gelukt, Maar toch bedankt voor je hulp!
Pagina: 1