Marco Wiederroth: onclick und location.href

Hallo,

ich hab ein Problem mit dem onclick-Ereignis:

folgender Code, wie er ja in selfhtml beschrieben ist, funktioniert:

<html><head><title>Test</title>
<script language="JavaScript">
function Wunsch()
{
 Ziel = window.prompt("Ihre Wunsch-URL:","");
 window.location.href = Ziel;
}
</script>
</head><body>
<a href="javascript:Wunsch()">Wunschverweis</a>
</body></html>

Doch warum funktioniert das nicht mehr, wenn ich das über das onclick-Ereignis mache, also:

<a href="#" onclick="javascript:Wunsch()">Wunschverweis</a>

Danke.
Marco

  1. Hallo,

    Tach,

    <a href="#" onclick="javascript:Wunsch()">Wunschverweis</a>

    weil javascript: kein sinnvoller Javascript-Befehl ist?

    Andreas

    1. Moin,

      <a href="#" onclick="javascript:Wunsch()">Wunschverweis</a>
      weil javascript: kein sinnvoller Javascript-Befehl ist?

      Geht, ohne den nicht sinnvollen Javascript-Befehl aber trotzdem nicht.

      Marco

    2. Hallihallo!

      <a href="#" onclick="javascript:Wunsch()">Wunschverweis</a>
      weil javascript: kein sinnvoller Javascript-Befehl ist?

      Soll heißen: entweder
         <a href="javascript:Wunsch()">Wunschverweis</a>
      oder
         <a href="#" onClick="Wunsch()">Wunschverweis</a>

      Beides Miteinander vermengt funktioniert nicht. Der OnClick- Eventhandler braucht das "javascript" nicht, weil er sowieso eine Javascript- Anweisung erwartet.

      Ich hoffe, ich konnte Dir helfen...

      Viele liebe Grüße,
      Der Dicki

  2. Hi,

    noch ne kleine Anmerkung.

    Vielleicht hab ich´s ein bisschen schlecht beschrieben.
    Die Function funzt auch mit onclick.

    Der Prompt kommt, nur window.location... wird nicht ausgeführt.

    Sorry.

    Gruß
    Marco

    1. Tach

      noch ne kleine Anmerkung.

      Vielleicht hab ich´s ein bisschen schlecht beschrieben.

      Schlecht? Garnicht.
      "geht nicht" ist keine Fehlerbeschreibung ;-)

      Grad wollt ich nachfragen...

      Die Function funzt auch mit onclick.

      http://www.andreas-waechter.de/Spass/Sprachliches.html#funzen

      Der Prompt kommt, nur window.location... wird nicht ausgeführt.

      Doch, er wird ausgeführt. Aber weil Dein onclick-Handler kein "return false;" am Ende hat, wird im nächsten Augenblick das geladen, was unter href="..." angegeben ist - die Seite, die bereits geladen ist.

      onclick="Wunsch();return false;"
      sollte also helfen.

      Andreas

      1. Hallo,

        Vielleicht hab ich´s ein bisschen schlecht beschrieben.
        Schlecht? Garnicht.
        "geht nicht" ist keine Fehlerbeschreibung ;-)

        Ok, stimmt. Müßt ich als "Hardwarefuzzi" eigentlich wissen.
        PS: Gibt´s für "Fuzzi" auch einen Link? ;-)

        onclick="Wunsch();return false;"
        sollte also helfen.

        Hat gehelft ! *g*

        Danke!

        Gruß
        Marco