Marcus Czeslinski: Linkbestätigung

Hallo,

bin mit JavaScript noch nicht so vertraut und stehe vor folgenden Problem:

Ich habe eine Seite mit recht vielen Links und möchte, das wenn jemand auf einen dieser Links klickt sich eine Hinweisbox öffnet mit der Abfrage ja/nein. Bei ja soll zu den angeklickten Link gewechselt werden, bei nein bleibt man auf der aktuellen Seite.

Der Text, der in der Hinweisbox steht soll frei wählbar sein.

Ich hoffe mal Ihr wisst was ich meine.

Vielen Dank schon mal.

Gruss

Marcus

  1. Moin Moin !

    Sowas in der Art sollte es tun:

    <a href="/hell/" onclick="return confirm('Are you sure?');">Hell</a>

    confirm macht die Abfrage mit beliebigem Text und gibt für OK true, für Cancel false zurück. Das return im onclick-Eventhandler bricht den Event ab (false) oder nicht (true). Wenn confirm also true zurückliefert, wird der Event weiter behandelt und die nächste Seite wird geladen.

    Alexander

    --
    Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"
    1. Hey,

      besten Dank, funzt wunderbar.

      Gruss Marcus

  2. Hallo Marcus,

    Hinweisbox : http://selfhtml.teamone.de/javascript/objekte/window.htm#confirm

    Da Du mehrere Links auf deiner Seite hast, solltest Du Dich auch mit Funktionen auseinandersetzen:
    http://selfhtml.teamone.de/javascript/sprache/funktionen.htm

    Gruß
    Helmut Weber

    --
    -------------------------------------------
    Mode ist eine Variable, Stil eine Konstante
  3. hi,

    <HTML><HEAD><TITLE>links</TITLE>

    <script type="text/javascript">
    function OpenConfirm(url) {
     Check = confirm("Wollen Sie diese Seite wirklich sehen?");
     if(Check == true) document.location.href = url; else return 0;
    }
    </script>
    </HEAD><BODY>
    <a href="#" onClick="JavaScript:OpenConfirm('seite.php')" target="_self">bla</a>

    </BODY>
    </HTML>

    mfg
    comunicout

    --
    fütter mein ego !
    welcome to electro-smog therapy
    1. Moin Moin !

      <script type="text/javascript">
      function OpenConfirm(url) {
       Check = confirm("Wollen Sie diese Seite wirklich sehen?");
       if(Check == true) document.location.href = url; else return 0;
      }
      </script>

      <a href="#" onClick="JavaScript:OpenConfirm('seite.php')" target="_self">bla</a>

      Sorry, das ist keine gute Idee:

      * Weder Suchmaschinen noch JS-lose Surfer können damit irgendetwas anfangen. [ href="#" ]
      * Wozu erzwingst Du ein Target, wenn exakt das Target ohnehin Default ist? [ target="_self" ]
      * Wozu belegst Du eine globale Variable mit einem Funktionsergebnis, das Du ohnehin nur exakt einmal brauchst? [ Check=confirm(...) ]
      * Was hat das "JavaScript:" im Onclick-Handler verloren? => Archiv!
      * Wozu vergleichst Du ein Boolean explizit mit true? [ if (Check == true) ]
      * Warum gibst Du bei Abbruch 0 und nicht false zurück? [ return 0 ]
      * Warum gibst Du den Rückgabewert von OpenConfirm nicht an den Eventhandler zurück? [ return OpenConfirm('...') ]
      * Wo ist der konfigurierbare Text geblieben?
      * Wozu lädst Du die nächste Seite per location.href?
      * Wie kannst Du einen Link in einem neuen Fenster öffnen?

      [pref:t=48881&m=266630] funktioniert auch ohne JS (dann ohne Abfrage), Suchmaschinen mögen den Code, es ist wesentlich kürzer, das normale Target-Attribut des A-Tags funktioniert weiter, usw usw usw.

      Oder, um es kurz und hart zu sagen: "SETZEN, SECHS!"

      Alexander

      --
      Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so!"