Hallo Antje,
Alternative: Verwende click() und damit klickst du denn submit-Button an, dann klappt es auch. Was du willst ist ein fensterübergreifender Event und das ist schwer möglich.
Versuche also:parent.formframe.document.testform.Submit.click();
Für das konstruierte Beispiel funktioniert das natürlich, aber den Submit-Button habe ich ja nur hinzugefügt, damit man testen kann, daß es damit funzt. "In echt" soll der natürlich nicht dasein. Sonst weiß ja keiner welchen Button anklicken ;-)
Hintergrund ist, daß ich bevor das Formular abgeschickt wird, im Formularframe die Seite noch beschreiben will mit einer Meldung wie "Bitte haben Sie Geduld, Suchanfrage wird bearbeitet". Dies klappt im IE problemlos, indem ich per Klick auf den Suchen-Button (in einem anderen Frame als das Formular befindlich) eine Funktion aufrufe, die zuerst die Überprüfungen durchführt, per submit() das Formular abschickt und dann mit document.write die Meldung schreibt bzw. eine neue Datei mit der Meldung lädt. Geht beides.
Im NS geht beides aber nicht. Die Seite wird zwar geladen, aber irgendwie wird nix submitted. Auch setTimeout nützt nichts. Außer man setzt ihn so hoch, daß die Ergebnisseiten vor der Meldung da sind. Scheint so zu sein, dass der NS den Frame für das Ergebnis sperrt.
Aber auch daran liegts nicht. Denn eine unelegantere Lösung funktioniert: Auslesen der Formularfelder mit JS, zusammenbasteln der URL mit QueryString, Meldung einblenden und per location.href die URL zuweisen. Das ganze ist allerdings viel Code und ich hätte das gerne anders gelöst. Z.B. über den EventHandler OnSubmit, der ja angeblich _vor_ dem Abschicken ausgeführt wird.
Deswegen verstehe ich auch nicht ganz was du mit frameübergreifender Event meinst. Wenn ich ein Formular aus einem anderen Frame abschicke, dann müßte doch der Event eintreten. Von wo ich das Formular abschicke ist doch egal. Ich kann ja auch von dem anderen Frame auf einen Button klicken und dann den EventHandler OnClick auslösen. Wo ist der Unterschied?
Also: was ich _eigentlich_ will ist eine Lösung für den Netscape, die es ermöglicht, direkt nach dem submit eine Seite einzublenden. Dachte halt über OnSubmit wärs möglich.
Hier mal die URL des Projekts zur Ansicht. Falls jemand sich die Mühe machen möchte.
http://isubkn.ub.uni-konstanz.de:8080/htm-fjh/rech/gesamt.htm
Im JS-Code steht die oben beschriebene Notlösung unter viel viel anderes Unausgegorenes <g>.
Achja und bis jetzt nur für 4er Browser!
Gruss
Franz-Josef