LS

Stel je hebt een keuzemenu in een formulier.
Is het mogelijk via de keuze naar een andere pagina te navigeren en tegelijkertijd andere ingevulde data van het formulier te submitten?

Navigeren naar een ander pagina vormt geen probleem en doe ik op de volgende manier. (Het laatste menu van dit formulier)Het lukt me echter niet de andere ingevulde gegevens uit het formulier mee naar het subformulier

<SCRIPT LANGUAGE = "JavaScript">
<!--

// Array Functie

function makeArray() {
var args = makeArray.arguments;
for (var i = 0; i < args.length; i++) {
this[i] = args[i];
}
this.length = args.length;
}

// Deze Array dient voor de beschrijving van de links

var pages = new makeArray("LBO/VMBO">LBO/VMBO",
"Middelbare School",
"MBO",
"HBO",
"Universiteit",
"post doctoraal");

// Deze Array dient voor de URL's van de links

var urls = new makeArray("",
"http://www.website.nl/formulier1.php";,
"http://www.website.nl/formulier2.php";,
"http://www.website.nl/formulier3.php";,
"http://www.website.nl/formulier4.php";, "http://www.website.nl/tformulier5.php";,
"http://website.nl/formulier6.php");

// Functie die de keuze bestuurt

function goPage(form) {
i = form.menu.selectedIndex;
if (i != 0) {
window.location.href = urls[i];
}
}

//-->
</SCRIPT>


<table>
<tr>
<td width="208" align="left"><img src="logo/profilm33.gif" width="104" height="247" border="0" /></td>

<td><table>
<tr align="left">
<TD>
<P>Voornaam:</P></TD>
<TD><INPUT name=voornaam maxsize="50"></TD></TR>

<tr align="left">
<TD>
<P>Naam: </P></TD>
<TD><INPUT name=naam maxsize="50"></TD></TR>

<tr align="left">
<TD>Geslacht</TD>
<TD><SELECT size=1 name=geslacht><OPTION value=-1 selected ?selected?><OPTION value="man">Man</OPTION><OPTION value="vrouw">Vrouw</OPTION></SELECT></TD></TR>
<tr align="left">
<TR>
<TD>Opleiding</TD>
<TD><SELECT size=1 name=mopl><OPTION value=-1 selected ?selected?><OPTION value="LBO/VMBO">LBO/VMBO</OPTION> <OPTION value="Middelbare school">Middelbare school</OPTION> <OPTION value="MBO">MBO</OPTION> <OPTION value="HBO">HBO</OPTION> <OPTION value="Universiteit">Universiteit</OPTION> <OPTION value="post doctoraal">post doctoraal</OPTION></SELECT> </TD></TR>
<TD>om:</TD>

<BR>
<TD><SCRIPT LANGUAGE = "JavaScript">
<!--

// Plaats deze code (volledig! Dus het stukje hierboven ook) waar je het menu wil hebben

document.write('<FORM><SELECT NAME = "menu" onChange = "goPage(this.form)">');
for (var i = 0; i < pages.length; i++) {
document.write('<OPTION>' + pages[i]);
}
document.write('</SELECT></FORM>');

//-->
</SCRIPT>

</TD></TR></table></td>
<select onchange="functie();">
...opties...
</select

Zoiets is het geloof ik, maar ben geen Javascript expert :-) .
Een aanvulling op mijn vraag:
Het is de bedoeling het deel van het formulier inclusief de informatie uit het optiemenu mee te nemen naar de gekozen pagina.

Normaal gesproken via submit
echter wanneer je via:

<select onchange="functie();">
...opties...
</select

wordt de informatie niet meegenomen.
Frank
dan moet je dat dmv de functie zelf mee laten nemen. en opzich snap ik het nut niet van naar een kompleet nieuwe pagina gaan hiermee, zulke dingen zijn meestal bedoeld om aanvulling op een optie te geven, misschien mbv ajax.
Wat ik probeer te bereiken dat het formulier op dat punt gesplitst wordt naar specifieke formulieren.
Het eerste deel van de informatie moet dan wel behouden blijven.
Hoe kun je de reeds ingevulde informatie via de functie meenemen?
door een submit.this.form uit te voeren ipv die functie.. of anders is misschien toch ajax een leuke oplossing
aangezien je toch al met js werkt zou ik daar voor gaan :P
LS
Gezien de antwoorden stel ik mijn vraag anders.
Stel je hebt een keuzemenu ter navigatie in een formulier.
Is het mogelijk via de keuze naar een andere pagina te navigeren en tegelijkertijd andere ingevulde data van het formulier te submitten?

Navigeren naar een ander pagina vormt geen probleem en doe ik op de volgende manier. (Het laatste menu van dit formulier)Het lukt me echter niet de andere ingevulde gegevens uit het formulier mee naar het subformulier
Via de antwoorden kom ik er niet uit.
Frank


<SCRIPT LANGUAGE = "JavaScript">
<!--

// Array Functie

function makeArray() {
var args = makeArray.arguments;
for (var i = 0; i < args.length; i++) {
this = args[i];
}
this.length = args.length;
}

// Deze Array dient voor de beschrijving van de links

var pages = new makeArray("LBO/VMBO">LBO/VMBO",
"Middelbare School",
"MBO",
"HBO",
"Universiteit",
"post doctoraal");

// Deze Array dient voor de URL's van de links

var urls = new makeArray("",
"http://www.website.nl/formulier1.php";,
"http://www.website.nl/formulier2.php";,
"http://www.website.nl/formulier3.php";,
"http://www.website.nl/formulier4.php";, "http://www.website.nl/tformulier5.php";,
"http://website.nl/formulier6.php");

// Functie die de keuze bestuurt

function goPage(form) {
i = form.menu.selectedIndex;
if (i != 0) {
window.location.href = urls[i];
}
}

//-->
</SCRIPT>


<table>
<tr>
<td width="208" align="left"><img src="logo/profilm33.gif" width="104" height="247" border="0" /></td>

<td><table>
<tr align="left">
<TD>
<P>Voornaam:</P></TD>
<TD><INPUT name=voornaam maxsize="50"></TD></TR>

<tr align="left">
<TD>
<P>Naam: </P></TD>
<TD><INPUT name=naam maxsize="50"></TD></TR>

<tr align="left">
<TD>Geslacht</TD>
<TD><SELECT size=1 name=geslacht><OPTION value=-1 selected ?selected?><OPTION value="man">Man</OPTION><OPTION value="vrouw">Vrouw</OPTION></SELECT></TD></TR>
<tr align="left">
<TR>
<TD>Opleiding</TD>
<TD><SELECT size=1 name=mopl><OPTION value=-1 selected ?selected?><OPTION value="LBO/VMBO">LBO/VMBO</OPTION> <OPTION value="Middelbare school">Middelbare school</OPTION> <OPTION value="MBO">MBO</OPTION> <OPTION value="HBO">HBO</OPTION> <OPTION value="Universiteit">Universiteit</OPTION> <OPTION value="post doctoraal">post doctoraal</OPTION></SELECT> </TD></TR>
<TD>om:</TD>

<BR>
<TD><SCRIPT LANGUAGE = "JavaScript">
<!--

// Plaats deze code (volledig! Dus het stukje hierboven ook) waar je het menu wil hebben

document.write('<FORM><SELECT NAME = "menu" onChange = "goPage(this.form)">');
for (var i = 0; i < pages.length; i++) {
document.write('<OPTION>' + pages[i]);
}
document.write('</SELECT></FORM>');

//-->
</SCRIPT>

</TD></TR></table></td>
Het is niet makkelijk om als je meedere formulieren in een pagina hebt alle data uit alle formulieren naar 1 formulier om te gooien.

Wat wel makkelijk is, is maar 1 formulier gebruiken en gewoon de ACTION aanpassen afhankelijk van de link die je kiest.

<?
document.forms['formuliertje'].action = 'pagina_submenu_1.php';
document.forms['formuliertje'].submit();
?>

Note: dit is geen PHP code, maar voor de kleurtjes even PHP tags omheen gezet.

Reageren