[PHP/JS] probeem: forms vullen on the fly

Pagina: 1
Acties:

  • RicX
  • Registratie: September 2003
  • Laatst online: 04-09 13:11

RicX

Het leven is geen ponypark

Topicstarter
mijn probleem is het volgende:

ik wil de velden van een formulier dat ik op een pagina heb staan invullen met behulp van links op diezelfde pagina. Met andere woorden als ik op een bepaalde link klik, moet er een bepaalde value worden onthouden en als ik vervolgens op een bepaald veld klik, moet deze value in dat veld worden ingevuld.
Dit heb ik al voor elkaar gekregen met behulp van de volgende stukjes code:
code:
1
2
3
<a href="?input=Voorletters">%Adressen.Voorletters%</a>

<input type="text" id="tekst" size="70" onfocus='document.getElementById("tekst").value = "<?php echo $_REQUEST["input"]; ?>";'>

Zoals te zien is gebruik ik een get om de 'bepaalde value' te onthouden en daarna set ik de value met gebruik van die get.

Het probleem komt naar voren wanneer ik probeer meerdere velden op een pagina te setten. De values van de al-gesette (:P) velden worden namelijk niet onthouden. Door mijn opbouw kan ik deze niet als een hidden-veld opslaan en meevoeren in de get of de post. Dit is gewoon niet mogelijk door dingen die nog meer op de site staan. Mijn vraag is dus eigenlijk... Kan ik ook nog op een andere manier die velden hun value laten onthouden?

Honesty is the best policy, but insanity is a better defense


  • user109731
  • Registratie: Maart 2004
  • Niet online
Je zou onClick kunnen afvangen, en met JS een querystring op kunnen bouwen met meerdere parameters... :) (window.location enzo).

Ik vind het toch een vreemde aanpak, is het ook niet mogelijk om gewoon een GET-request te doen, en als er op de link geklikt word met JS de input aan laten passen? :)

[ Voor 7% gewijzigd door user109731 op 10-11-2006 18:13 ]


  • MIster X
  • Registratie: November 2001
  • Laatst online: 25-09 21:57
Merkwaardige aanpak inderdaad. Hier zijn links simpelweg niet voor bedoeld.

Wat je zou kunnen doen als je dit per se wilt, is een langere querystring bouwen:
<a href="?input=Voorletters&input2=Achternaam">%Adressen.Voorletters%</a>

Maar liever gebruik je gewoon een form met buttons.

  • moozzuzz
  • Registratie: Januari 2005
  • Niet online
Misschien makkelijker als je alle $_REQUEST-vars ($_POST en/of $_GET) in een globale javascript(-array) gooit.

HTML:
1
<a href="./?input1=blah&amp;input2=foo">it's a blah thing</a>
HTML:
1
<input name="inputname[1]" onfocus="document.getElementById(this.name).value = globalvar[1];">