Erstellen von HTML-Formularelementen mit verschiedenen Eingabetypen

CSSCSSBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab werden die Schüler lernen, wie sie umfassende HTML-Formularelemente mit verschiedenen Eingabetypen erstellen können. Das Lab bietet einen strukturierten Ansatz zum Verständnis von Formular-Tag-Attributen, zur Implementierung verschiedener Eingabeelemente und zur Erkundung von Formular-Design-Techniken. Die Teilnehmer werden praktische Erfahrungen mit Textfeldern, Radiobuttons, Checkboxen, Dateiuploads und Absendebutton sammeln und so essentielle Webentwicklungskompetenzen für die Erstellung interaktiver und benutzerfreundlicher Webformulare erwerben.

Das Lab behandelt Schlüsselkonzepte wie die Konfiguration von Formular-Tags, die Variationen von Eingabetypen und praktische Implementierungsstrategien. Durch die Bearbeitung von Schritt-für-Schritt-Übungen werden die Lernenden verstehen, wie sie Formulare strukturieren, Eingabeattribute definieren und dynamische Benutzerinteraktionselemente erstellen können, die für die Erfassung und Verarbeitung von Benutzerdaten in Webanwendungen von entscheidender Bedeutung sind.

Verständnis des Formular-Tags und seiner grundlegenden Attribute

In diesem Schritt lernen Sie über HTML-Formular-Tags und ihre grundlegenden Attribute. Formulare sind essentiell für die Erfassung von Benutzer-Eingaben auf Webseiten und ermöglichen die Interaktion zwischen Benutzern und Websites.

Beginnen wir damit, ein einfaches HTML-Formular in der WebIDE zu erstellen. Öffnen Sie eine neue Datei im Verzeichnis ~/project und benennen Sie sie form_basics.html.

touch ~/project/form_basics.html
<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>HTML Form Basics</title>
  </head>
  <body>
    <form action="/submit" method="post">
      <!-- Form elements will be added here -->
    </form>
  </body>
</html>

Das <form>-Tag hat zwei Schlüsselattribute:

  • action: Gibt an, wohin die Formulardaten gesendet werden, wenn das Formular abgesendet wird.
  • method: Definiert, wie die Daten gesendet werden (typischerweise "get" oder "post").

Lassen Sie uns die Formularattribute genauer betrachten:

  • action="/submit": Dies wäre normalerweise ein serverseitiger Endpunkt, der die Formulardaten verarbeitet.
  • method="post": Sendet die Formulardaten im Anfragekörper. Dies ist sicherer für sensible Informationen.

Beispielausgabe einer einfachen Formularstruktur:

<form action="/submit" method="post">
  <!-- Form will look like this when rendered -->
</form>

Häufige Formularattribute sind:

  • name: Identifiziert das Formular.
  • id: Eindeutiger Bezeichner für das Formular.
  • target: Gibt an, wo die Antwort angezeigt werden soll.
  • enctype: Gibt an, wie die Formulardaten codiert werden sollen.

Wenn Sie das Formular in einem Browser anzeigen lassen, wird noch kein sichtbarer Inhalt angezeigt. Die Formularstruktur ist die Grundlage für das Hinzufügen von interaktiven Elementen wie Textfeldern, Radiobuttons und mehr.

Implementierung von Text-Eingabeelementen

In diesem Schritt lernen Sie über verschiedene Arten von Text-Eingabeelementen in HTML-Formularen. Wir werden weiterhin mit der im vorherigen Schritt erstellten Datei form_basics.html arbeiten.

Textfelder sind grundlegende Formularelemente, die es Benutzern ermöglichen, verschiedene Arten von textbasierten Informationen einzugeben. Lassen Sie uns verschiedene Eingabetypen erkunden:

Öffnen Sie die Datei ~/project/form_basics.html und aktualisieren Sie das Formular mit verschiedenen Text-Eingabeelementen:

<form action="/submit" method="post">
  <!-- Single-line text input -->
  <label for="username">Username:</label>
  <input
    type="text"
    id="username"
    name="username"
    placeholder="Enter your username"
  />

  <!-- Email input -->
  <label for="email">Email:</label>
  <input type="email" id="email" name="email" placeholder="Enter your email" />

  <!-- Password input -->
  <label for="password">Password:</label>
  <input
    type="password"
    id="password"
    name="password"
    placeholder="Enter your password"
  />

  <!-- Number input -->
  <label for="age">Age:</label>
  <input type="number" id="age" name="age" min="0" max="120" />

  <!-- Multiline text input -->
  <label for="comments">Comments:</label>
  <textarea
    id="comments"
    name="comments"
    rows="4"
    cols="50"
    placeholder="Enter your comments"
  ></textarea>
</form>

Wichtige Attribute für Textfelder:

  • type: Definiert den Typ der Eingabe (Text, E-Mail, Passwort, Zahl)
  • id: Eindeutiger Bezeichner für die Eingabe
  • name: Name, der beim Absenden der Formulardaten verwendet wird
  • placeholder: Hinweistext, der vor der Benutzer-Eingabe angezeigt wird
  • min und max: Grenzwerte für Zahlen-Eingaben
  • rows und cols: Abmessungen für Textbereiche

Beispielausgabe, wenn das Formular in einem Browser gerendert wird:

Anmerkung: Erfahren Sie mehr über Wie man HTML-Dateien in der WebIDE vorschaut.

HTML form text input elements example

Erstellung von Radiobuttons und Checkboxen als Auswahlmöglichkeiten

In diesem Schritt lernen Sie, wie Sie Radiobuttons und Checkboxen in HTML-Formularen erstellen. Diese Eingabetypen sind von entscheidender Bedeutung, um Benutzern die Auswahl aus vordefinierten Optionen zu ermöglichen.

Öffnen Sie die Datei ~/project/form_basics.html und fügen Sie die folgenden Radiobutton- und Checkbox-Elemente hinzu:

<form action="/submit" method="post">
  <!-- Radio Button Group -->
  <fieldset>
    <legend>Select Your Favorite Programming Language:</legend>
    <input type="radio" id="python" name="language" value="python" />
    <label for="python">Python</label>

    <input type="radio" id="javascript" name="language" value="javascript" />
    <label for="javascript">JavaScript</label>

    <input type="radio" id="java" name="language" value="java" />
    <label for="java">Java</label>
  </fieldset>

  <!-- Checkbox Group -->
  <fieldset>
    <legend>Select Your Skills:</legend>
    <input type="checkbox" id="html" name="skills" value="html" />
    <label for="html">HTML</label>

    <input type="checkbox" id="css" name="skills" value="css" />
    <label for="css">CSS</label>

    <input type="checkbox" id="javascript" name="skills" value="javascript" />
    <label for="javascript">JavaScript</label>
  </fieldset>
</form>

Wichtige Punkte zu Radiobuttons und Checkboxen:

  • Radiobuttons (type="radio") ermöglichen nur eine Auswahl pro Gruppe.
  • Checkboxen (type="checkbox") ermöglichen mehrere Auswahlen.
  • Das name-Attribut gruppiert verwandte Eingaben zusammen.
  • Das value-Attribut definiert den abgesendeten Wert.
  • <fieldset> und <legend> helfen, Eingabegruppen zu organisieren und zu beschriften.

Beispielausgabe, wenn das Formular in einem Browser gerendert wird:

HTML form with radio buttons and checkboxes

Hinzufügen von Dateiupload- und Absendebutton

In diesem Schritt lernen Sie, wie Sie Dateiupload-Eingabefelder und Absendebutton zu Ihrem HTML-Formular hinzufügen. Diese Elemente sind essentiell, um Benutzern das Hochladen von Dateien und das Absenden von Formulardaten zu ermöglichen.

Öffnen Sie die Datei ~/project/form_basics.html und fügen Sie die folgenden Elemente hinzu:

<form action="/submit" method="post" enctype="multipart/form-data">
  <!-- Previous form elements from previous steps -->

  <!-- File Upload Input -->
  <fieldset>
    <legend>Upload Your Profile Picture:</legend>
    <input type="file" id="profile-pic" name="profile-pic" accept="image/*" />
  </fieldset>

  <!-- Submit and Reset Buttons -->
  <div>
    <input type="submit" value="Submit Form" />
    <input type="reset" value="Clear Form" />
  </div>
</form>

Wichtige Punkte zu Dateiupload- und Absendebutton:

  • type="file" erstellt ein Dateiupload-Eingabefeld.
  • accept="image/*" beschränkt die Dateiauswahl auf Bilder.
  • enctype="multipart/form-data" ist für Dateiuploads erforderlich.
  • type="submit" erstellt einen Button zum Senden der Formulardaten.
  • type="reset" löscht alle Formulareingaben.

Beispielausgabe, wenn das Formular in einem Browser gerendert wird:

HTML form with file upload and buttons

Wichtige Attribute:

  • accept: Gibt die erlaubten Dateitypen an.
  • value: Legt den Text auf den Buttons fest.
  • name: Identifiziert die Eingabe beim Absenden.

Übung mit Formularelement-Kombinationen

In diesem letzten Schritt erstellen Sie ein umfassendes Registrierungsformular, das alle HTML-Formularelemente kombiniert, die Sie bisher gelernt haben. Wir werden ein Benutzer-Registrierungsformular entwerfen, das die praktische Anwendung verschiedener Eingabetypen zeigt.

Erstellen Sie eine neue Datei ~/project/registration_form.html mit folgendem Inhalt:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>User Registration Form</title>
  </head>
  <body>
    <form action="/register" method="post" enctype="multipart/form-data">
      <h2>User Registration</h2>

      <!-- Personal Information -->
      <fieldset>
        <legend>Personal Details</legend>
        <label for="fullname">Full Name:</label>
        <input type="text" id="fullname" name="fullname" required />

        <label for="email">Email:</label>
        <input type="email" id="email" name="email" required />

        <label for="age">Age:</label>
        <input type="number" id="age" name="age" min="18" max="100" />
      </fieldset>

      <!-- Account Preferences -->
      <fieldset>
        <legend>Account Preferences</legend>
        <label>Preferred Programming Language:</label>
        <input type="radio" id="python" name="language" value="python" />
        <label for="python">Python</label>

        <input
          type="radio"
          id="javascript"
          name="language"
          value="javascript"
        />
        <label for="javascript">JavaScript</label>

        <label>Skills:</label>
        <input type="checkbox" id="web" name="skills" value="web" />
        <label for="web">Web Development</label>

        <input type="checkbox" id="data" name="skills" value="data" />
        <label for="data">Data Science</label>
      </fieldset>

      <!-- Profile Picture -->
      <fieldset>
        <legend>Profile Picture</legend>
        <input type="file" id="profile" name="profile" accept="image/*" />
      </fieldset>

      <!-- Additional Comments -->
      <fieldset>
        <legend>Additional Information</legend>
        <label for="comments">Comments:</label>
        <textarea id="comments" name="comments" rows="4" cols="50"></textarea>
      </fieldset>

      <!-- Form Submission -->
      <div>
        <input type="submit" value="Register" />
        <input type="reset" value="Clear Form" />
      </div>
    </form>
  </body>
</html>

Wichtige Merkmale dieses kombinierten Formulars:

  • Mehrere Eingabetypen (Text, E-Mail, Zahl, Radiobutton, Checkbox)
  • Dateiupload
  • Textbereich für zusätzliche Kommentare
  • Absende- und Zurücksetz-Buttons
  • Fieldsets zur Organisation der Formularabschnitte
  • Pflicht- und optionale Felder

Beispielausgabe, wenn das Formular in einem Browser gerendert wird:

User registration form example

Zusammenfassung

In diesem Lab haben die Teilnehmer die Grundlagen der Erstellung von HTML-Formularen gelernt, indem sie essentielle Formularelemente und Attribute untersucht haben. Das Lab hat die Schüler dabei unterstützt, die Struktur von Formular-Tags zu verstehen, wobei der Schwerpunkt auf Schlüsselattributen wie action und method lag, die bestimmen, wie Formulardaten verarbeitet und übertragen werden. Die Teilnehmer haben das Erstellen einfacher Formularlayouts und die Implementierung verschiedener Eingabetypen geübt, darunter Textfelder, Radiobuttons, Checkboxen und Dateiupload-Elemente.

Der praktische Ansatz hat es den Lernenden ermöglicht, praktische Fähigkeiten in der Gestaltung interaktiver Webformulare zu entwickeln. Dabei wurden kritische Aspekte wie die Konfiguration von Eingabeelementen, Formularabsendemethoden und die Gestaltung der Benutzerinteraktion behandelt. Indem die Schüler schrittweise Formularkomponenten erstellt haben, haben sie Einblicke in die Strukturierung benutzerfreundlicher und funktionaler Weboberflächen mithilfe von Standard-HTML-Formular-Techniken gewonnen.