abonnement Unibet Coolblue Bitvavo
pi_15818136
Ik wil dat een formulier op mijn pagina verstuurd wordt door een tekstlink ipv een button.

Nu heb ik het volgende stukje script gevonden:

code:
<form name="theForm">
<input type=text name="formInput">
<a href="javascript:document.theForm.submit();">Submit</a>
</form>

Probleem is alleen dat ik afhankelijk van welke link geklikt wordt, nog een extra variabele meesturen om aan te geven wat er gedaan moet worden na het verzenden van het formulier (in PHP).

Als ik een hidden-fiels aanmaak, dan krijgt die variabele die waarde onafhankelijk van welke link ik klik.

Wie weet hoe ik dit op kan lossen?

  dinsdag 30 december 2003 @ 10:28:52 #2
42782 QuietGuy
opscheppende pats-nerd
pi_15818349
<a href="javascript:document.theForm.hiddenveldje.value='bla';document.theForm.submit();">Submit</a>
pi_15818409
code:
<a href="javascript:document.theForm.submit();">Submit</a>
boeheoeoeo neee

een anchor is NIET voor het aanroepen van javascripts, gebruik hiervoor een span als je het voor text wilt doen. en helemaal niet in de href.

[code]

<script type="text/javascript">

function submit(id) {
document.getElementById('hidden').value = id;
document.form.submit();
}

<span onclick="submit(id);">Submit</span>

<input type="hidden" id="hidden" value="-1"

als je dit toevoegd, dan zet hij elke keer de value van [id] in de hidden field, niet mooi, wel effectief

Humans are ultimate agressors, capable of killing themselves and others.
pi_15818466
Ik heb nu staan:
code:
<a href="javascript:document.form1.a.value='verwijderen';document.form1.submit();">verwijderen</a>
De link verstuurt het formulier wel nog steeds, maar als ik op de volgende pagina kom en ik zeg echo $a; dan blijft het angstvallig stil.
  dinsdag 30 december 2003 @ 10:38:12 #5
42782 QuietGuy
opscheppende pats-nerd
pi_15818517
quote:
Op dinsdag 30 december 2003 10:35 schreef schwa78 het volgende:
Ik heb nu staan:
code:
<a href="javascript:document.form1.a.value='verwijderen';document.form1.submit();">verwijderen</a>
De link verstuurt het formulier wel nog steeds, maar als ik op de volgende pagina kom en ik zeg echo $a; dan blijft het angstvallig stil.
Je moet wel een hidden field a aanmaken eerst, en $_GET[a] of $_POST[a] gebruiken.
  dinsdag 30 december 2003 @ 10:38:39 #6
52967 hmmm_lasagne_
kijk mamma zonder handen !
pi_15818533
zie bovenstaande post

die is erg netjes
in de volgnde page echo je vervolgens $hidden

VRAAG: als jij nou een broodrooster was . maakt niet uit wat voor een... Wat voor broodjes zou je roosteren ?
pi_15818649
Ik heb nu:
code:
<head>
<script type="text/javascript">

function submit(id) {
document.getElementById('hidden').value = id;
document.form1.submit();
}
</script>
</head>
<body>

<form name="form1" action="index.php" method="post">
<input type="hidden" id="hidden" value="-1">
<span onclick="submit('verwijderen');">Submit</span>
</form>
</body>


Hij submit wel netjes, maar als ik op de volgende pagina echo $hidden doe, dan blijft het wederom stil.
  dinsdag 30 december 2003 @ 10:46:29 #8
42782 QuietGuy
opscheppende pats-nerd
pi_15818704
quote:
Op dinsdag 30 december 2003 10:44 schreef schwa78 het volgende:
Ik heb nu:
code:
[knip]
Hij submit wel netjes, maar als ik op de volgende pagina echo $hidden doe, dan blijft het wederom stil.
Doe eens echo $_POST[hidden]
pi_15818772
quote:
Op dinsdag 30 december 2003 10:46 schreef QuietGuy het volgende:

[..]

Doe eens echo $_POST[hidden]


Helaas blijft het dan nog steeds stil...
  dinsdag 30 december 2003 @ 10:53:25 #10
42782 QuietGuy
opscheppende pats-nerd
pi_15818858
quote:
Op dinsdag 30 december 2003 10:49 schreef schwa78 het volgende:
[..]
Helaas blijft het dan nog steeds stil...
Je programmeert ook niet echt vriendelijk, ik pas ff je code aan zodat het ook in niet-MSIE-browsers werkt:
code:
<html><head>
<script type="text/javascript">
function s_submit(id) {
document.form1.s_hidden.value = id;
document.form1.submit();
}
</script>
</head>
<body>
<?=$_POST[s_hidden];?>
<form name="form1" action="index.php" method="post">
<input type="hidden" name="s_hidden" value="-1">
<span onclick="s_submit('verwijderen');">Submit</span>
</form>
</body>
</html>

pi_15818934
Heej, nu doet ie het wel...
Thanks!!!!!!

Ik ga meteen kijken wat er mis gaat op mijn pagina...

pi_15819027
Hij doet het!!!

2 kleine foutjes zaten er nog in:
<input type="hidden" id="hidden" value="-1">
ipv
<input type="hidden" name="hidden" value="-1">

en de functie hernoemt naar s_submit ipv submit.

Allen bedankt!!!

  dinsdag 30 december 2003 @ 11:01:06 #13
42782 QuietGuy
opscheppende pats-nerd
pi_15819032
quote:
Op dinsdag 30 december 2003 10:56 schreef schwa78 het volgende:
Heej, nu doet ie het wel...
Thanks!!!!!!

Ik ga meteen kijken wat er mis gaat op mijn pagina...


Mja, sowieso een functie genaamd 'submit' en een veld genaamd 'hidden' kan al conflicten geven.

Daarnaast had je het hidden field geen naam gegeven, alleen een id. De id is alleen clientside; de name is de naam die naar de server wordt gestuurd.

Dit was het wel zo'n beetje

pi_15819348
Nog een laatste vraagje

Hoe zorg ik er nou voor dat die <span> eruit ziet als een link? Ik denk dat veel van mijn bezoekers het niet meteen snappen als het er niet uitziet als een link...

  dinsdag 30 december 2003 @ 11:17:15 #15
42782 QuietGuy
opscheppende pats-nerd
pi_15819428
quote:
Op dinsdag 30 december 2003 11:13 schreef schwa78 het volgende:
Nog een laatste vraagje

Hoe zorg ik er nou voor dat die <span> eruit ziet als een link? Ik denk dat veel van mijn bezoekers het niet meteen snappen als het er niet uitziet als een link...


Gewoon een <a> van maken:
<span onclick="s_submit('verwijderen');">Submit</span>
wordt:
<a href="javascript:s_submit('verwijderen');">Submit</a>
óf:
<a href="#" onclick="s_submit('verwijderen');">Submit</a>
pi_15820002
quote:
Mja, sowieso een functie genaamd 'submit' en een veld genaamd 'hidden' kan al conflicten geven.
Dikke onzin.

Functienamen en namen van velden zijn onafhankelijk.

Check de DOM

Humans are ultimate agressors, capable of killing themselves and others.
  dinsdag 30 december 2003 @ 11:40:39 #17
42782 QuietGuy
opscheppende pats-nerd
pi_15820118
quote:
Op dinsdag 30 december 2003 11:37 schreef JackHerer het volgende:
[..]
Dikke onzin.
Functienamen en namen van velden zijn onafhankelijk.
Voorbeeld:
code:
<form name="form1">
<input type="text" name="submit" value="blaat">
</form>

Dan gaan we het formulier submitten:
document.form1.submit();
of een alias maken voor het veld 'submit'
var txt=document.form1.submit;

Met functienamen heb je gelijk, dit zal niet uit maken, maar maakt de code ook niet duidelijker.

pi_15830057
hehehehe... ik had nog een vraagje

Is het ook mogelijk om 2 variabelen mee te sturen met het bovenstaande script??

Als dat zou kunnen dan zou dat helemaal tof zijn!

  dinsdag 30 december 2003 @ 17:01:40 #19
42782 QuietGuy
opscheppende pats-nerd
pi_15830096
code:
<html><head>
<script type="text/javascript">
function s_submit(id,id2) {
document.form1.s_hidden.value = id;
document.form1.s_hidden2.value = id2;
document.form1.submit();
}
</script>
</head>
<body>
<?=$_POST[s_hidden];?><br>
<?=$_POST[s_hidden2];?>
<form name="form1" action="index.php" method="post">
<input type="hidden" name="s_hidden" value="-1">
<input type="hidden" name="s_hidden2" value="-1">
<a href="javascript:s_submit('verwijderen','optie2');">Submit</a>
</form>
</body>
</html>

Wil je hem met 3 ook nog hebben?
pi_15830719
quote:
Op dinsdag 30 december 2003 17:01 schreef QuietGuy het volgende:
code:
<knip>
Wil je hem met 3 ook nog hebben?
Neej hoor. Voorlopig moet dit genoeg zijn

Anyway, wederom bedankt!

  dinsdag 30 december 2003 @ 17:23:44 #21
42782 QuietGuy
opscheppende pats-nerd
pi_15830781
quote:
Op dinsdag 30 december 2003 17:21 schreef schwa78 het volgende:
[..]
Anyway, wederom bedankt!
Dat kan ook in Bedank hier QuietGuy...
abonnement Unibet Coolblue Bitvavo
Forum Opties
Forumhop:
Hop naar:
(afkorting, bv 'KLB')