Formular: Action ändern
cssler
- javascript
Hallo
ich habe ein normales Formular. Über ein Select-Feld wähle ich zuerst die Action-URL aus, sprich der Ort wohin das Formular versendet werden soll. Dies mache ich mit onChange="this.form.action=this.value".
Dies funktioniert im Firefox perfekt. Nur der IE möchte dies so nicht akzeptieren und ausführen.
Den Grund dafür habe ich bereits gefunden:
Mein Code:
---------------------
<form name="orderform" method="post" id="orderform" action="" target="_blank" onSubmit="return chkFormular()">
<input type="hidden" name="action" value="pay_safer">
....
<select id="Zahlungsart" name="Zahlungsart" class="frm_input" onChange="form.action=this.value">
<option value="keine" selected>-- Bitte wählen --</option>
<option value="URL3">Über Postkonto</option>
<option value="URL2">Über Bankkonto</option></select>
------------
Der Grund für den IE-Fehler ist, dass ich zusätzlich ein Hidden Feld mit dem Namen "action" habe. Diese Feld muss aber zweingend so heissen und so aussehen wie jetzt. Ich brauche den Wert danach genau so zur Weiterverarbeitung.
Warum lässt sich der IE vom Hidden Feld beeinflussen? Name und Tag-typ sind ja nicht die selben bei beiden?
Kann mir jemand helfen?
gruss und Dank
Hallo cssler!
Kann mir jemand helfen?
Eventuell.
Versuche die Action so u ändern:
document.getElementById("orderform").action = ...
Da die ID eindeutig, die action aber nicht ist, könnte es klappen.
Schönen Gruß
Afra
Hallo
Danke für die Hilfe, geht nicht, sowohl via getelementbyID, getelementsbyName, getelementsbyTag, alles schon versucht, ohne erfolg.....
Danke für die Hilfe, geht nicht, sowohl via getelementbyID, getelementsbyName, getelementsbyTag, alles schon versucht, ohne erfolg.....
kein Wunder, keiner dieser Funktionen existiert (sofern du sie nicht irgendwo definiert hast)
Struppi.
Hallo!»» Hallo
Danke für die Hilfe, geht nicht, sowohl via getelementbyID, getelementsbyName, getelementsbyTag, alles schon versucht, ohne erfolg.....
Hast Du es wie ich es genannt habe, oder so, wie Du es benamt hast, getan? Beachte bitte dazu Struppis Bemerkung.
Schönen Gruß
Afra
Der Grund für den IE-Fehler ist, dass ich zusätzlich ein Hidden Feld mit dem Namen "action" habe. Diese Feld muss aber zweingend so heissen und so aussehen wie jetzt. Ich brauche den Wert danach genau so zur Weiterverarbeitung.
Dann musst du es anders benennen.
Wenn du ein Element mit dem Namen 'action' hast kollidiert es mit der Eigenschaft action
Warum lässt sich der IE vom Hidden Feld beeinflussen? Name und Tag-typ sind ja nicht die selben bei beiden?
Sind sie aber beide im selben Objekt und es gibt keinen Unterschied zwischen:
document.forms[0].action = 'string';
document.forms[0].action = [Object];
Struppi.