HTML input in JavaScript-Variable?

4 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Um den Wert eines Elementes auslesen zu können, muss das Element eine eindeutige ID haben und das Element muss einen Wert bzw. Value haben.

Und in deinem Formular muss eine Action definiert sein, die beim Absenden ausgeführt wird.

Ich verwende das aber nicht mehr sondern prüfe Formulare erst in dem PHP-Script, das die Daten verarbeitet.

So würde es gehen (siehe Kommentare):

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <title>Input to Variable</title>
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <link rel="stylesheet" type="text/css" media="screen" href="main.css">
    <script src="main.js"></script>
    <script>
        // warten, bis die Seite vollständig geladen wurde
        window.onload = function() {
            // input-Element auswählen
            var inputBox = document.getElementById("inputValue");
            
            // wenn der Button angeklickt wird (click-Event)
            document.getElementById("submitButton")
                .addEventListener("click", function() {
                    // Inhalt des Eingabefeldes auslesen
                    var input = inputBox.value;
                    alert("Die Eingabe lautet: " + input);
                });
        };
    </script>
</head>
<body>
    <input type="text" id="inputValue">
    <!-- Der Button sollte eine ID haben (submitButton), um ihn im obigen Skript auszuwählen. -->
    <button id="submitButton">Submit</button>
</body>
</html>
Wenn ich in HTML ein form ausfülle und abschicke

werden die Daten an den Server übermittelt.

JavaScript läuft aber auf dem Client und hat keinen Zugriff auf die an den Server übermittelten Daten. Das muss also bereits VOR dem Abschicken abgegriffen werden.

Wozu möchtest du in der HTML Seite die Eingabe abfragen? In der Regel macht man das mit einem richtigen Formular im Backend z.b. mit PHP