bruno: bei unload warnen und draufbleiben wegen datenverfall

Hi Leute,

also ich möchte gern auf einer Seite die möglichkeit geben auf den unload zu verzichten, heisst also das bei aktualisierung, zurück oder eingabe einer neuen url (letzteres muss nicht unbedinkt sein) der user ein pop up angezeitg bekommt wo darauf aufmerksam gemacht wird das die daten verfallen wenn er jetzt die seite verlässt und er somit die möglichkeit hat sich dafür zu entscheiden weiterzumachen. In erster Linie soll es aber als sicherheitsmechanismus dienen, es kann ja  auch mal ausversehen ein unload geschehen.

mit onunload klappt es nicht so recht also folgendes

<body onunload="Aufhalten()">

function Aufhalten(){
check = confirm("Sie dürfen die Seite während des Tests nicht verlassen");

}

ich bekomme zwar das popup vor dem unload aber egal ob ich ok oder abbrechen wähle der unload wird trotzdem vollzogen.

mfg bruno

  1. Hallo Bruno,

    function Aufhalten(){
    check = confirm("Sie dürfen die Seite während des Tests nicht verlassen");

    solche Seiten besuche ich ganz genau einmal. Ich würde sogar meinen Browser schliessen, um von einer solchen Seite wegzukommen. Und ich komme _nie_ wieder.

    Wenn ich weg will, will ich weg! Wenn mich jemand aufhalten will, finde ich das unverschämt.

    Freundliche Grüße

    Vinzenz

    1. Wenn ich weg will, will ich weg! Wenn mich jemand aufhalten will, finde ich das unverschämt.

      Man hätte ja die Option. Es ist auch nervig, wenn ein riesiges ausgefülltes Formular dass zeitliche segnet, weil man das falsche Tab schließt.

      Zum Problem:
      versuch nach dem Confirm dochmal das hier:
      if(!check) return false;

      Sonst ist ja nicht klar, was du tun willst.

      Gruß & Fuß,
      Ruben

      1. Wenn ich weg will, will ich weg! Wenn mich jemand aufhalten will, finde ich das unverschämt.
        Man hätte ja die Option. Es ist auch nervig, wenn ein riesiges ausgefülltes Formular dass zeitliche segnet, weil man das falsche Tab schließt.

        wie gesagt in erter Linie zur Qualitätssicherung

        Zum Problem:
        versuch nach dem Confirm dochmal das hier:
        if(!check) return false;

        meinst du so

        function Aufhalten(){
        check = confirm("Sie dürfen die Seite während des Tests nicht verlassen");
        if(!check) return false;
        }

        klappt leider auch nicht besser.

        Sonst ist ja nicht klar, was du tun willst.

        wie meinst du das ? falls das problem

        ich möchte das wenn aktualisieren oder zurück ausgelöst wird der anwender über ein popup gewart wird das seine daten verfallen und die Möglichkeit hat die Aktualisierung oder zurück nicht durchzuführen!

        Gruß & Fuß, mal was neues

        bruno

        1. Moin!

          ich möchte das wenn aktualisieren oder zurück ausgelöst wird der anwender über ein popup gewart wird das seine daten verfallen und die Möglichkeit hat die Aktualisierung oder zurück nicht durchzuführen!

          Du kannst das Verlassen der Seite zumindest bei funktionierenden Browsern nicht aufhalten. Auf die Auswertung einer mögliche Userreaktion wurde da meines Wissens bei allen Browsern verzichtet.

          MFFG (Mit freundlich- friedfertigem Grinsen)

          fastix®

          --
          Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
          1. Du kannst das Verlassen der Seite zumindest bei funktionierenden Browsern nicht aufhalten. Auf die Auswertung einer mögliche Userreaktion wurde da meines Wissens bei allen Browsern verzichtet.

            beforeunload existiert!

            Wie oft muss man das widerholen, bis die Pawlowschen Reaktionen bei dieser Frage aufhören?

            Mathias

            1. Moin!

              beforeunload existiert!

              Du hast Recht. Ich habe es gerade getestet- und es geht - guter Tipp, werde ich mir merken :)

              Wie oft muss man das widerholen, bis die Pawlowschen Reaktionen bei dieser Frage aufhören?

              Solange, bis eine andere Pawlowsche Reaktion die bisherige überschreibt.

              MFFG (Mit freundlich- friedfertigem Grinsen)

              fastix®

              --
              Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
              1. Moin!

                beforeunload existiert!

                Du hast Recht. Ich habe es gerade getestet- und es geht - guter Tipp, werde ich mir merken :)

                geht aber nicht bei netzcape oder, also hat erstma nicht geklappt
                ist das jscript von microsoft und klappt das auch für firefox?

                Wie oft muss man das widerholen, bis die Pawlowschen Reaktionen bei dieser Frage aufhören?

                Solange, bis eine andere Pawlowsche Reaktion die bisherige überschreibt.

                hat bestimmt schon jeder mal erlebt diese ewig nervenden Seiten musste teilweise die ganze Zeit alt f4 drücken bis sich da was tut!
                aber die sogennaten Pawlowschen (ist das ein wort oder) Reaktionen müssen eigentlich nicht auftauchen da schon in der überschrieft steht
                wegen datenverfall, insofern also nur nervig aber nun gut!

                MFFG (Mit freundlich- friedfertigem Grinsen)

                bruno

                1. Hallo Bruno,

                  wegen datenverfall, insofern also nur nervig aber nun gut!

                  ja auch wenn ich wegen Datenverfall gewarnt werde, nervt mich eine solche Meldung, wenn ich ganz bewußt die Seite verlasse. Ich will nicht bestätigen: "Ja, ich will die Seite wirklich verlassen, auch wenn dabei Daten verloren gehen."

                  Das ist meine persönliche Meinung, dazu stehe ich.

                  Freundliche Grüße

                  Vinzenz

                  1. Hallo Bruno,

                    wegen datenverfall, insofern also nur nervig aber nun gut!

                    ja auch wenn ich wegen Datenverfall gewarnt werde, nervt mich eine solche Meldung, wenn ich ganz bewußt die Seite verlasse. Ich will nicht bestätigen: "Ja, ich will die Seite wirklich verlassen, auch wenn dabei Daten verloren gehen."

                    Das ist meine persönliche Meinung, dazu stehe ich.

                    die meinung habe ich eigentlich auch nur musste ich zum Glück in meinem Leben schon erleben das nicht alles so ist wie ich es gerne hätte(etwas labidal ausgedrückt) man könnte auch sagen das mann einfach nicht weiss was der jenige möchte worum es geht oder sonstwie auch wenn einem da die Erfahrung oft recht gibt(auch universal betrachtet) aufgrund dessen wird ja diese haltung eingenommen , mann sich lieber zurückhält bis der nebel verfliegt.

                    Es geht hierbei um einen Einstellungstest und wenn du den einfach so abrechen möchtest oder dir es egal ist falls du durch irgendein misgeschick (nicht das ich dir sowas nachsagen könnte das du dazu neigest) den test von neuem starten musst naja wie gesagt

                    Freundliche Grüße

                    bruno

                    1. Hallo Bruno,

                      Es geht hierbei um einen Einstellungstest und wenn du den einfach so abrechen möchtest ...

                      in diesem Falle halte ich die Warnung durchaus für gerechtfertigt. Wobei molilys Link, Formular in Echtzeit speichern, noch besser ist.

                      Freundliche Grüße

                      Vinzenz

                2. Moin!

                  geht aber nicht bei netzcape oder, also hat erstma nicht geklappt
                  ist das jscript von microsoft und klappt das auch für firefox?

                  Ich habe es mit dem Firefox 1.0.7 getestet.

                  hat bestimmt schon jeder mal erlebt diese ewig nervenden Seiten musste teilweise die ganze Zeit alt f4 drücken bis sich da was tut!

                  Nein. Der Dialog sagt doch klar, was zu tun ist: [Ok]: Tschüss und weg- [Abbrechen]- zurück zur Seite und brav weiter ausfüllen+ senden. Das hat nichts mit den üblichen Popup-Schweinereien zu tun.

                  MFFG (Mit freundlich- friedfertigem Grinsen)

                  fastix®

                  --
                  Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development
      2. Hi ruben,

        Wenn ich weg will, will ich weg! Wenn mich jemand aufhalten will, finde ich das unverschämt.
        Man hätte ja die Option. Es ist auch nervig, wenn ein riesiges ausgefülltes Formular dass zeitliche segnet, weil man das falsche Tab schließt.

        Das kannst du vermeiden: https://addons.mozilla.org/extensions/moreinfo.php?id=58

        versuch nach dem Confirm dochmal das hier:
        if(!check) return false;

        Es geht nicht (genauer: es wird nicht erlaubt). (Mit Brunos Code schon gar nicht)
        Du könntest ja onunload="return false" schreiben, und dann könnte der User den Browser gar nicht mehr schließen.

        Gruß, Marian

        1. Hi ruben,

          Wenn ich weg will, will ich weg! Wenn mich jemand aufhalten will, finde ich das unverschämt.
          Man hätte ja die Option. Es ist auch nervig, wenn ein riesiges ausgefülltes Formular dass zeitliche segnet, weil man das falsche Tab schließt.

          Das kannst du vermeiden: https://addons.mozilla.org/extensions/moreinfo.php?id=58

          ich mache den test erstmal nur für den ie 5 aber wenn das trotzdem hilft werd ich mir das mal angucken!

          Es geht nicht (genauer: es wird nicht erlaubt). (Mit Brunos Code schon gar nicht)

          wie klappt es denn ?

          Du könntest ja onunload="return false" schreiben, und dann könnte »»der User den Browser gar nicht mehr schließen.

          also wenn ich folgendes schreibe

          <body onunload="return false">

          kann ich alles machen

          bruno

          1. Hi bruno,

            Es geht nicht (genauer: es wird nicht erlaubt). (Mit Brunos Code schon gar nicht)

            wie klappt es denn ?

            du hast geschrieben: onunload="Aufhalten()"
            und dann: function Aufhalten() { check = confirm("Sie dürfen die Seite während des Tests nicht verlassen"); }

            du musst irgendwas schreiben wie: onunload="return [true/false]"
            oder eben "return Aufhalten()" und dann return confirm("blabla")

            Du könntest ja onunload="return false" schreiben, und dann könnte »»der User den Browser gar nicht mehr schließen.

            also wenn ich folgendes schreibe

            <body onunload="return false">

            Dann würde es gar nicht schließen. Und genau deswegen erlaubt dir kein Browser, bei onunload ein return reinzuschreiben.

            Gruß, Marian

  2. Hallo,

    also ich möchte gern auf einer Seite die möglichkeit geben auf den unload zu verzichten, heisst also das bei aktualisierung, zurück oder eingabe einer neuen url (letzteres muss nicht unbedinkt sein) der user ein pop up angezeitg bekommt wo darauf aufmerksam gemacht wird das die daten verfallen wenn er jetzt die seite verlässt und er somit die möglichkeit hat sich dafür zu entscheiden weiterzumachen.

    Da hilft onbeforeunload weiter. Siehe auch Formular in Echtzeit speichern.

    Mathias

    1. Hallo molily.

      Da hilft onbeforeunload weiter. [...]

      Ist es gewollt, dass dies auch beim Neuladen des Dokumentes feuert?

      Einen schönen Samstag noch.

      Gruß, Ashura

      1. Hi,

        Ist es gewollt, dass dies auch beim Neuladen des Dokumentes feuert?

        Natürlich. Bevor ein neues Dokument geladen wird, wird das bisherige Dokument aus dem Browser entfernt.
        Daß beide Dokumente zufällig dieselbe URL haben, spielt dabei doch keine Rolle.

        cu,
        Andreas

        --
        Warum nennt sich Andreas hier MudGuard?
        Schreinerei Waechter
        Fachfragen per E-Mail halte ich für unverschämt und werde entsprechende E-Mails nicht beantworten. Für Fachfragen ist das Forum da.
        1. Hallo MudGuard.

          Ist es gewollt, dass dies auch beim Neuladen des Dokumentes feuert?

          Natürlich. Bevor ein neues Dokument geladen wird, wird das bisherige Dokument aus dem Browser entfernt.
          Daß beide Dokumente zufällig dieselbe URL haben, spielt dabei doch keine Rolle.

          Auch wenn es merkwürdig anmutet, kann ich dies nachvollziehen.
          Danke.

          Einen schönen Samstag noch.

          Gruß, Ashura

    2. Hallo,

      yo danke das klappt ganz gut hatte schon mal den tipp bekommen für unbeforeonload bloss in verbindung mit diesem link .
      http://msdn.microsoft.com/workshop/author/dhtml/reference/events/onbeforeunload.asp
      und jscript nur für ie wollte ich nicht hab auch keine gleichnamige funktion in selfhtml gefunden!

      nagut das ist wohl jscript werd mir das als notlösung parrat halten danke!

      mfg bruno

  3. Moin!

    Leute... Fragen technischer Natur können nicht "nicht hilfreich" sein, zumal hier tatsächlich unser aller Lieblingswunsch, nämlich den relevanten Teil des Quelltextes mitzuposten, erfüllt wurde.

    MFFG (Mit freundlich- friedfertigem Grinsen)

    fastix®

    --
    Als Freiberufler bin ich immer auf der Suche nach Aufträgen: Schulungen, Seminare, Training, Development