Der übliche Weg wäre, drei verschiedene Submit-Buttons zu benutzen und im serverseitigen Script den benutzten Button abzufragen und abhängig davon auf verschiedene Routinen zu verzweigen. Das Ändern des action-Attributs mit Javascript hat für mich immer so den Beigeschmack einer Krücke.
das ist ja nicht das Prob, ich könnte auch ein 'hidden' Feld mit einem def. Wert neu beschreiben, alles in derselben JS Routine, da meckert selbst der IE nicht rum. aber meine Frage war und ist, warum der IE das nicht akzeptiert?
»» Die Form ist ziemlich fett ...
"form" ist das englische Äquivalent für "Formular". Also "die Formular"? Passt irgendwie nicht ...
ja klar, das Formular, bzw. <form>
Wie sieht das zugrundeliegende HTML aus?
das hab ich im Büro :) aber das HTML ist problemlos. Es sind zwar mehrere Forms (pardon mehrere <form>) aber die werden schon korrekt behandelt und gesendet. Bis auf eben diese bek*** form.action...
»» function senden(id) {
»» act = document.forms[0].faction.value;
Und es gibt ein Element mit dem Namen "faction" im Formular?
ja gibt es, in einem 'hidden'. bedeutet nicht mehr wie "formular action" deshalb 'faction'. ein string. in der zitierten JS routine wird daran einfach die Seitenzahl für den ZEND-Paginator angehängt und daraus die betreffende <form> action gebildet. passt alles soweit, ist ein string, ich hab ihn mir per alert() auch debuggen lassen.
Die URLS, die die <form> aufrufen soll sehen etwa aus wie
http://server/de/index/send/page/1
http://server/de/index/send/page/2
http://server/de/index/send/page/x
usw.
was bei PHP 'Scripte' wären, sind beim ZEND-MVC "Controller". klar, ich könnte die ganze Sache auf *einen* einzigen Controller umbauen, was letztlich auch auf *eine* <form> action hinauslaufen würde. was aber mühselig wäre, es wären mal eben mehrere Hundert Zeilen Code umzubauen :-/
daher muss ich diese JS Routine irgendwie hinkriegen.
Der Kollege weiter unten im Thread schlug vor statt
document.forms[0].action = act
dies hier:
document.forms[0].action.value = act
das werd ich morgen mal probieren.
und bei Stefan Münz:
http://de.selfhtml.org/javascript/objekte/forms.htm#action
steht auch nicht viel mehr da wie lapidar, joa, man kann die form action lesen _und_ ändern. bleibt uns den Beweis aber noch schuldig O_o. Diese action auslesen und ausgeben lassen kann ja wohl jeder Idiot *pardon*
Gruß
Windhund