Max: javascript:void(0);

Hi, habe ein Problem mit dem IE6. Wenn ich auf einen Link mit href="javascript:void(0);" onclick="..." klicke passiert im IE6 (auf mehreren Rechnern probiert) nichts, im IE7 und FF2 funktioniert es einwandfrei. Kennt jemand das Problem?

Beispiel:
<a href="javascript:void(0);" onclick="function();">Klick mich</a>

MfG Max

  1. Hallo,

    Beispiel:
    <a href="javascript:void(0);" onclick="function();">Klick mich</a>

    „function“ ist aber kein sinnvoller Name für eine Funktion…

    Vielleicht geht es deshalb nicht…

    mfg. Daniel

    1. Hallo,

      Beispiel:
      <a href="javascript:void(0);" onclick="function();">Klick mich</a>

      „function“ ist aber kein sinnvoller Name für eine Funktion…

      Vielleicht geht es deshalb nicht…

      mfg. Daniel

      Der Funktionsname "function" steht nur beispielhaft da. In der HTML-Datei steht ein anderer Funktionsname.

      1. Hallo,

        Der Funktionsname "function" steht nur beispielhaft da. In der HTML-Datei steht ein anderer Funktionsname.

        Gibt's eine Fehlermelung? Außerdem würde ich nicht gleich mit einer kompletten Funktion testen, sondern erstmal alert() probieren.

        <a href="javascript:void(0)" onclick="alert('funzt')">SagWas</a>

        Teste das mal.

        mfg. Daniel

  2. Hi, habe ein Problem mit dem IE6. Wenn ich auf einen Link mit href="javascript:void(0);" onclick="..." klicke passiert im IE6 (auf mehreren Rechnern probiert) nichts, im IE7 und FF2 funktioniert es einwandfrei. Kennt jemand das Problem?

    wozu das unnötige Verwisziel?
    void() ist dazu da das nichts passiert.

    Struppi.

    --
    Javascript ist toll (Perl auch!)
    1. Hi, habe ein Problem mit dem IE6. Wenn ich auf einen Link mit href="javascript:void(0);" onclick="..." klicke passiert im IE6 (auf mehreren Rechnern probiert) nichts, im IE7 und FF2 funktioniert es einwandfrei. Kennt jemand das Problem?

      wozu das unnötige Verwisziel?
      void() ist dazu da das nichts passiert.

      Struppi.

      Es ist dazu da, um nicht in der Statuszeile den Funktionsnamen mit den Parametern angezeigt zu bekommen. Ein # im href-Ziel funktioniert auch nicht gut, da der Browser hier an den Seitenanfang zurückspringt.

      1. Es ist dazu da, um nicht in der Statuszeile den Funktionsnamen mit den Parametern angezeigt zu bekommen. Ein # im href-Ziel funktioniert auch nicht gut, da der Browser hier an den Seitenanfang zurückspringt.

        Wenn onclick mit "return false" beendet wird, wird der Link ebenfalls nicht aufgerufen. "javascript" im href ist nun wirklich nicht notwendig, genausowenig wie void().

        1. Hallo,

          "javascript" im href ist nun wirklich nicht notwendig, genausowenig wie void().

          IMHO aber immer noch besser als „#“. Besser wäre natürlich eine Alternativadresse.

          mfg. Daniel

      2. Es ist dazu da, um nicht in der Statuszeile den Funktionsnamen mit den Parametern angezeigt zu bekommen. Ein # im href-Ziel funktioniert auch nicht gut, da der Browser hier an den Seitenanfang zurückspringt.

        Wenn du keine Link-Funktionalität haben möchtest, warum verwendest du dann einen?

        --
        Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.
        Self-Code: sh:( ch:? rl:( br:> n4:( ie:{ mo:) va:) de:> zu:} fl:| ss:| ls:~ js:|
  3. Hab die Lösung des javascript:void(0); Problems:

    Angenommen man hat folgenden Link;

    <form name="testForm" action="Ziel" method="post">
        <a href="javascript:void(0);" onclick="sortField();">Sortieren</a>
    </form>

    und in Funktion sortField steht:
    function sortField()
    {
        /*
        Mach irgendetwas
        */
        document.testForm.submit()
    }

    Dann wird das submit() nicht ausgeführt, wenn im href-Tag "javascript:void(0);" steht. Durch ein onclick="sortField();return false;" kann das ganze aber zum Laufen gebracht werden.

    Hat irgendjemand eine Idee warum das so ist?

    1. Dann wird das submit() nicht ausgeführt, wenn im href-Tag "javascript:void(0);" steht. Durch ein onclick="sortField();return false;" kann das ganze aber zum Laufen gebracht werden.

      Nun ja, offenbar ist ein Link (zumindest im IE 6) immer als Gesamtheit zu betrachten. Das Resultat des Klicks wird also abgebrochen, wenn das Javascript-Klickziel void() macht.

      Allerdings ist das kein großer Beinbruch, denn wenn man mit Javascript vernünftig umgeht, nutzt man sowieso nur im onclick-Eventhandler Javascript, nicht im href. Und man verhindert die Ausführung des href-Links, indem man im onclick "return false" ans Ende setzt.