Zwei Variablen per submit übergeben
pedro
- javascript
0 CaptainSolo0 pedro0 Matti Maekitalo0 pedro
Hallo Allerseits,
ich habe folgendes Problem:
Ich habe in einer Form zwei DropDown-Felder unterschiedlichen Inhalts. Sobald der User den Submit-Button klickt, werden die gewählten Werte der Dropdownfelder an ein PHP-Script weitergeleitet. Der User kann die Auswahl mehrmals durchführen .Das funzt ohne Probleme.
Nun möchte ich aber feststellen, in welchem der beiden Dropdown-Felder Änderungen zur vorhergehenden Auswahl Änderungen durchgeführt wurden. Also nach dem Motto: Wenn Änderung in Liste1 sende zusätzliche Info "Liste1", wenn Änderung in Liste2 sende Info "Liste2", sonst sende keine zusätzliche Info.
Wer weiß eine Lösung
Das ist doch ganz einfach! :o)
Mach doch einfach eine onChange-Funktion auf die Auswahllisten, die den Value eines Hidden-Fields verändert.
Also etwa so:
function ChangeListe1()
{
document.FORM.liste1change.value="irgendwas";
}
<input type=hidden name="liste1change" value="false">
Ich denke mal das ist das, was Du erreichen wolltest oder?
Gruss,
CS
Das ist doch ganz einfach! :o)
Also etwa so:
function ChangeListe1()
{
document.FORM.liste1change.value="irgendwas";
}
<input type=hidden name="liste1change" value="false">
Ich denke mal das ist das, was Du erreichen wolltest oder?
Gruss,
CS
Hi CaptainSolo,
so ähnlich hab ich das schon probiert. Ich habe für jede DropDown-Liste ein hidden-text-Feld erstellt, das jeweils denselben name-Eintrag, aber einen unterschiedlichen value-Eintrag hat. Dabei überschreibt aber das zweite Feld den Eintrag des ersten:
<input type="hidden" name="aktfield" value="Liste1">
<input type="hidden" name="aktfield" value="Liste2">
Dabei bekomm ich dann in PHP immer "Liste2" zurück.
Gruß
pedro
Mosche
<input type="hidden" name="aktfield" value="Liste1">
<input type="hidden" name="aktfield" value="Liste2">
Dabei bekomm ich dann in PHP immer "Liste2" zurück.
Nimm doch zwei unterschiedliche Namen...
Tschö Matti
Mosche
<input type="hidden" name="aktfield" value="Liste1">
<input type="hidden" name="aktfield" value="Liste2">
Dabei bekomm ich dann in PHP immer "Liste2" zurück.
Nimm doch zwei unterschiedliche Namen...
Tschö Matti
Hi Matti,
bringt leider nix! Wenn ich zwei Felder mit unterschiedlichen Namen benutze, sind bei der Auswertung im PHP-Script beide Variablen - also "aktfield1" und "aktfield2" gefüllt!
<input type="hidden" name="aktfield1" value="Liste1">
<input type="hidden" name="aktfield2" value="Liste2">
So kann ich wieder nicht feststellen, welche Dropdownliste vom User gewählt wurde.
Mosche
bringt leider nix! Wenn ich zwei Felder mit unterschiedlichen Namen benutze, sind bei der Auswertung im PHP-Script beide Variablen - also "aktfield1" und "aktfield2" gefüllt!
<input type="hidden" name="aktfield1" value="Liste1">
<input type="hidden" name="aktfield2" value="Liste2">
So kann ich wieder nicht feststellen, welche Dropdownliste vom User gewählt wurde.
<input type="hidden" name="last_change">
<select name="aktfield1" onChange="javascript:document.forms[0].last_change.value=this.name">
...
</select>
<select name="aktfield2" onChange="javascript:document.forms[0].last_change.value=this.name">
...
</select>
Oder so ähnlich. War das jetzt so schwer?
Tschö Matti
...
Oder so ähnlich. War das jetzt so schwer?
Tschö Matti
SUPEROBERAFFEN*FINDICHECHTSTARK
Juhuuuu!
:-)))))))))))))))))))))))))))))
Danke für die Hilfe!
Cu
pedro
Moin!
SUPEROBERAFFEN*FINDICHECHTSTARK
Juhuuuu!
:-)))))))))))))))))))))))))))))
Danke für die Hilfe!
Tja, du wirst wiederkommen, wenn das erste Formular von einem Browser abgeschickt wurde, welcher KEIN Javascript kann.
Deshalb: Wenn du den aktuellen Inhalt der Listenauswahl (den du im PHP-Skript ja irgendwo her haben mußt) in ein Hidden-Feld speicherst (für jede Liste also noch ein Extrafeld) und im verarbeitenden Skript prüfst, welche Listenwahl sich vom Hidden-Feld unterscheidet, dann hast du auch deine Erkennung - und zwar browserunabhängig!
Außerdem solltest du berücksichtigen: Man kann auch in beiden Listen gleichzeitig was ändern. :) Und diesen Fall kriegst du mit dem vorliegenden Javascript nicht mit.
- Sven Rautenberg