JavaScript/DOM/HTMLElement/click

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche

Die Methode click() erzeugt einen automatischen Klick auf den betreffenden Button. Sie erwartet keine Parameter.

Anwendbar auf:


Beispiel
<html>
<head>
  <title>Test</title>
</head>
<body>

  <form name="Testform" action="">

    In welchem Jahr starb Goethe? <br>
    <input type="text" size="6" name="Todesjahr">

    <input type="button" name="derButton" value="Weiter" onclick="Check()">

  </form>


  <script>

    function Check () {
      if (document.Testform.Todesjahr.value != "1832") {
        window.location.href = "fehler.htm";
      } else {
        window.location.href = "erfolg.htm";
      }
    }

    window.setTimeout("document.Testform.derButton.click()", 10000);

  </script>

</body>
</html>

Das Beispiel enthält ein Formular, in dem der Anwender das Todesjahr von Goethe eingeben soll. Wenn der Anwender nicht innerhalb von 10 Sekunden auf den Button Weiter klickt, geschieht dies von alleine. Dafür sorgt die letzte Anweisung in dem Script, das unterhalb des Formulars notiert ist. Unterhalb des Formulars ist ein Script-Bereich notiert. Der Script-Bereich steht unterhalb, weil der darin enthaltene Code sofort ausgeführt und die Existenz des Formulars aber bereits voraussetzt.

Mit document.Testform.derButton.click() wird dort das Klicken das Buttons ohne Anwendereinwirkung bewerkstelligt.

Der Aufruf der Methode ist in window.setTimeout() mit einer Verzögerungszeit von 10000 Millisekunden, also 10 Sekunden, eingebettet. Beim Klick auf den Button, egal ob durch den Anwender oder automatisch, wird die Funktion Check() aufgerufen. Diese Funktion überprüft, ob in dem Eingabefeld für das Todesjahr der korrekte Wert steht. Abhängig davon wird eine andere Seite aufgerufen (location.href).