j4k3: form.submit() überträgt nicht die richtigen Werte...

Beitrag lesen

Lieber j4k3,

1.) Ich finde ein Popup an dieser Stelle nicht gut. Besser wäre ein entsprechendes Element (ich empfehle ein <p>-Element), das per CSS auf display:none gesetzt ist, und das nach der "Aktivierung" eben nicht mehr display:none, sondern display:bock bekommt. Mit weiteren CSS-Regeln lässt sich dieses Element (es muss wirklich kein <div> sein!) so gestalten, dass es wie ein Popup aussieht - es ist aber keines.

2.) Deine Funktion enthält einen Denkfehler!

document.forms[1].elements[2].selectedIndex = optionValue;

Du gibst der selectedIndex-Eigenschaft etwas, das Du in optionValue gespeichert hast. Merke: selectedIndex enthält _nicht_ den aktuell ausgewählten Wert (der im <option>-Element steht)! Es enthält einen "Zeiger" auf das entsprechende Auswahl-Element (besagtes <option>-Element). Das ist ein konzeptioneller Unterschied!

Liebe Grüße,

Felix Riesterer.

Hollerö und 'Naaah, des basst scho.'

1.) Ich hatte mir auch über alternativen zum Popup gedanken gemacht. Aber aufgrund der Größe des aufgerufenen Bildes kommt hier aber nichts anderes in Frage. Popup-Blocker der aktuellen Browser haben da auch überhaupt kein Problem mit. Die öffnen das Popup anstandslos.

2.) ...Und genau den von dir erwähnten Zeiger verbiege ich doch auch auf das Element, oder? Ich setze den selectedIndex auf das gewünschte Element und ändere nicht etwa den Text des ausgewählten.

Nochmal ausführlich: Manuell klappt das alles schon prima, wenn das Popup schliesst, ist der gewünschte Eintrag augewählt und beim manuellen Submit wird auch genau dieser Wert übertragen. Das Übertragen der Form per Script sclägt dann allerdings fehl. Es wird dann nicht mehr der per selectedIndex eingestellte Wert übertragen.

Oder habe ich das alles immer noch nicht verstanden? Was sonst muss ich denn  für eine Methode auf das Select-Obkject absetzen, wenn nicht selectedIndex?