Björn: Javascript - history.back()

Hallo zusammen,

ich hab folgendes Problem...
In einem Formular befindet sich ein Link, dieser öffnet ein neues Fenster für den Upload einer Datei.
Wenn der Anwender das Formular abschickt, dann wird geprüft, ob die Pflichtfelder ausgefüllt sind. Wenn nein, dann gehe ich mittels
<a href='javascript:history.back()'>O.K.</a>
zurück zum Formula. Die Daten sind noch da...
Wenn der Anwender aber einen Dateiupload durchführt, dann öffnet sich ein neues Fenster, der Anwender kann anschließend die Datei uploaden und schließt das Fenster. Sollten aber jetzt noch Pflichtfelder nicht gefüllt sein, so sollte er mit <a href='javascript:history.back()'>O.K.</a> wieder zum Formular zurückkommen. Dies funktioniert aber nicht, weil ich ja zwischendurch ein neues Fenster geöffnet hatte.
Gibt es für mein Problem eine Lösung?

Danke!

Viele Grüße
Björn

  1. Hallo,

    zurück zum Formula. Die Daten sind noch da...

    Toller Reim! Du solltest vielleicht nicht programmieren, sondern Songtexte dichten: "... und upload' ich ma keck, dann sind die Daten weg."

    Gibt es für mein Problem eine Lösung?

    Du willst den Upload nur zulassen, wenn alle Pflichtfelder ausgefüllt sind, ok. Dann würde ich den Link oder Button oder was immer für den Upload erst dann aktivieren (klickbar machen), wenn diese Bedingung erfüllt ist. Und natürlich nicht tausend Fenster öffnen: Das kommt beim User eh nicht gut an.

    Gruß, Don P

    1. Hallo,

      Du willst den Upload nur zulassen, wenn alle Pflichtfelder ausgefüllt sind, ok.

      klasse, du bist gut! Ich habe mich bemüht, eine ähnlich klare Aussage aus dem Beitrag zu extrahieren - es ist mir nicht gelungen.

      Und natürlich nicht tausend Fenster öffnen: Das kommt beim User eh nicht gut an.

      Full ACK. Und der Vollständigkeit halber: Auch history.back() ist natürlich wirkungslos, wenn JS nicht zur Verfügung steht.

      Ciao,
       Martin

      --
      Was du heute kannst besorgen,
      das geht sicher auch noch morgen.
  2. Mahlzeit Björn,

    Wenn der Anwender das Formular abschickt, dann wird geprüft, ob die Pflichtfelder ausgefüllt sind. Wenn nein, dann gehe ich mittels
    <a href='javascript:history.back()'>O.K.</a>
    zurück zum Formula. Die Daten sind noch da...

    Ggf. möchtest Du Dich zum Thema "Affenformular" informieren. Wenn Du das Funktionieren Deiner Anwendung außerdem sowieso von Javascript abhängig machst, könntest Du auch gleich beim Abschicken oder sogar bereits beim Ausfüllen eine client-seitige Prüfung durchführen, damit der Anwender nicht ständig vergeblich das Formular abschicken muss.

    Wenn der Anwender aber einen Dateiupload durchführt, dann öffnet sich ein neues Fenster, der Anwender kann anschließend die Datei uploaden und schließt das Fenster. Sollten aber jetzt noch Pflichtfelder nicht gefüllt sein, so sollte er mit <a href='javascript:history.back()'>O.K.</a> wieder zum Formular zurückkommen. Dies funktioniert aber nicht, weil ich ja zwischendurch ein neues Fenster geöffnet hatte.

    Ähm ... das habe ich jetzt *nicht* verstanden? Wieviele Fenster werden jetzt wann wo von wem geöffnet und wann wird welches geschlossen und was kann der Anwender parallel machen?

    Vielleicht solltest Du Dir nochmal Gedanken über die Benutzerfreundlichkeit Deiner Anwendung machen ... oder alternativ besser erklären, was passiert (oder ein Beispiel verlinken).

    Gibt es für mein Problem eine Lösung?

    Vermutlich ja. Ob das allerdings die von Dir gewünschte bzw. erwartete ist, bleibt im Moment noch offen ...

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|