Heim Web-Frontend HTML-Tutorial Tiefes Verständnis von HTML-Formularen

Tiefes Verständnis von HTML-Formularen

Jan 23, 2017 pm 03:54 PM
html 表单

Formularelemente

Von HTML zu HTML5 wurden formularbezogene Elemente stark erweitert und können grundsätzlich unsere allgemeinen Anforderungen erfüllen. Aber in der tatsächlichen Arbeit, Aufgrund von Interaktions- oder Browserkompatibilitätsanforderungen müssen native Formularelemente manchmal erweitert oder simuliert werden. Zuvor ist es jedoch noch wichtig, die verschiedenen Formelemente klar zu verstehen und zu beherrschen. In diesem Artikel, Wir werden Formularelemente (standardmäßig HTML5-Formularelemente) im Detail erklären.

Formular

● Das Formular verarbeitet automatisch das Submit-Ereignis (das Submit-Ereignis wird normalerweise durch das Eingabe- oder Schaltflächenelement von type=submit ausgelöst)

●Das Formular führt automatisch eine Überprüfungsebene durch und verwendet form.novalidate zum Umwandeln aus der nativen Validierung

●Form erhält die entsprechende Benutzereingabe basierend auf dem Namen jedes Formularelements und fügt dann die Formulardaten in Form einer Abfragezeichenfolge am Ende der URL hinzu, die dem Aktionsattribut entspricht . Die Standardanforderungsmethode ist GET und die Standardaktion ist die aktuelle URL.

●event.target.elements gibt alle interaktiven Elemente zurück

<form novalidate>
  <input name=&#39;username&#39; required/>
  <input name=&#39;passworkd&#39; type=&#39;password&#39; required/>
  <input name=&#39;email&#39; type=&#39;email&#39;/>
  <input type=&#39;submit&#39; value=&#39;submit&#39;/>
</form>
Nach dem Login kopieren

Wenn Sie den obigen Code ausführen, können Sie sehen, dass nach dem Absenden des Formulars der Browser die Adresse zurückgibt Fügen Sie eine Abfragezeichenfolge wie diese hinzu?username=tom&passworkd=123&email=test%40gmail.com

Interaktive Elemente

Muss mit dem Benutzer interagieren und erhalten Wir klassifizieren diesen Typ von Formularelementen, die von Benutzern als interaktive Formularelemente eingegeben werden.

Einige sind unten aufgeführt:

●Eingabe: Zu den häufig verwendeten Typen gehören „Kontrollkästchen“, „Tel“, „Nummer“, „E-Mail“ usw.

●Textbereich

●Auswählen

●Option

Feedback-Elemente

Formularelemente, die einfach Informationen zurückmelden und keine Interaktion mit dem Benutzer erfordern, wir klassifizieren sie als Feedback-Formular Element.

Im Folgenden sind einige aufgeführt:

●Meter

●Ausgabe

<form oninput="result.value=parseInt(a.value)+parseInt(b.value)">
    <input type=&#39;number&#39; value=&#39;50&#39; name=&#39;a&#39; />
    <input type=&#39;number&#39; value=&#39;10&#39; name=&#39;b&#39; />
    <output name=&#39;result&#39;>60</output>
</form>
Nach dem Login kopieren

Für die Ausgabe können Sie den berechneten Wert in form.oninput < festlegen 🎜>

Gruppierte Elemente

Dieser Formularelementtyp wird zum Gruppieren mehrerer Formularelemente verwendet. Wir klassifizieren sie als gruppierte Formularelemente.

Einige sind unten aufgeführt:

●fieldset

●optgroup

<form>
  <select>
    <optgroup label=&#39;group1&#39;>
      <option>1</option>
      <option>2</option>
      <option>3</option>
    </optgroup>
    <optgroup label=&#39;group2&#39;>
      <option>4</option>
      <option>5</option>
      <option>6</option>
    </optgroup>
    <optgroup label=&#39;group3&#39;>
      <option>7</option>
      <option>8</option>
      <option>9</optioin>
    </optgroup>
  </select>
</form>
Nach dem Login kopieren

label

● Verwenden Sie for, um eine Verbindung zum entsprechenden interaktiven Element herzustellen, das der ID zugeordnet ist

●Kann zum Umschließen interaktiver Elemente, einschließlich mehrerer, verwendet werden, um das erste zu steuern

●Eine Verschachtelung wird nicht empfohlen Etiketten

<form>
  <fieldset>
    <legend>Title</legend>
    <label for=&#39;radio&#39;>Click me</label>
    <input type=&#39;radio&#39; id=&#39;radio&#39;/>
  </fieldset>
</form>
Nach dem Login kopieren
<form>
  <fieldset>
    <legend>用户信息</legend>
    <label>
      男 <input type=&#39;radio&#39; name=&#39;gender&#39; id=&#39;male&#39; />
    </label>
    <label>
      女 <input type=&#39;radio&#39; name=&#39;gender&#39; id=&#39;female&#39;/>
    </label>
  </fieldset>
</form>
Nach dem Login kopieren

Verwenden Sie JavaScript, um Formulare zu verarbeiten

Abstraktion des Feldes

Die grundlegendste Struktur:


 field: {
    name: String,
    value: String || String[]
  }
Nach dem Login kopieren
●Der String[] des Werts wird normalerweise verwendet, aufgeteilt und zu einem String synthetisiert

●Für Namen mit komplexen Strukturen können Sie keyPath verwenden

  const fromKeyValues = {
    &#39;user.name&#39;: &#39;Tom&#39;,
    &#39;user.phone[0].number&#39;: &#39;123456&#39;,
    &#39;user.phone[0].type&#39;: &#39;mobile&#39;
  };

  const fromValues = {
    user: {
      name: &#39;Tom&#39;,
      phone: [
        {
          number: &#39;123456&#39;,
          type: &#39;mobile&#39;
        }
      ]
    }
  };
Nach dem Login kopieren
Wenn der obige Code nicht sehr klar ist, lesen Sie bitte qs

für eine vollständige Implementierung

●Standard-Übermittlungsereignis für Formulare blockieren

●Das Kontrollkästchen muss anstelle des Werts aktiviert sein

●select-multiple muss mehrere Werte speichern

●Mit Ausnahme der oben genannten speziellen interaktiven Elemente übernehmen die anderen ihre Werte ​​von Wert standardmäßig

form.html

<form>
    <fieldset>
        <legend>Login</legend>
        <input name=&#39;username&#39; placeholder=&#39;username&#39; minlength=&#39;2&#39;/>
        <input name=&#39;password&#39; type=&#39;password&#39; placeholder=&#39;password&#39;/>
        <label>
            remember password            <input name=&#39;checkbox&#39; type=&#39;checkbox&#39;/>
        </label>
    </fieldset>
    <fieldset>
        <p class="gender">
            <legend>More Info</legend>
            <label>
                男                <input name=&#39;gender&#39; type=&#39;radio&#39; value=&#39;male&#39; />
            </label>
            <label>
                女                <input name=&#39;gender&#39; type=&#39;radio&#39; value=&#39;female&#39; />
            </label>
        </p>
        <select name=&#39;select&#39; multiple>
            <option>1</option>
            <optgroup label=&#39;2&#39;>
                <option>2.1</option>
                <option>2.2</option>
            </optgroup>
        </select>
    </fieldset>
    <button type=&#39;submit&#39;>Submit</button></form>
Nach dem Login kopieren

form.js

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Tabellenrahmen in HTML Tabellenrahmen in HTML Sep 04, 2024 pm 04:49 PM

Anleitung zum Tabellenrahmen in HTML. Hier besprechen wir verschiedene Möglichkeiten zum Definieren von Tabellenrändern anhand von Beispielen für den Tabellenrand in HTML.

HTML-Rand links HTML-Rand links Sep 04, 2024 pm 04:48 PM

Anleitung zum HTML-Rand links. Hier besprechen wir einen kurzen Überblick über HTML margin-left und seine Beispiele sowie seine Code-Implementierung.

Verschachtelte Tabelle in HTML Verschachtelte Tabelle in HTML Sep 04, 2024 pm 04:49 PM

Dies ist eine Anleitung für verschachtelte Tabellen in HTML. Hier diskutieren wir anhand der entsprechenden Beispiele, wie man eine Tabelle innerhalb der Tabelle erstellt.

HTML-Tabellenlayout HTML-Tabellenlayout Sep 04, 2024 pm 04:54 PM

Leitfaden zum HTML-Tabellenlayout. Hier besprechen wir die Werte des HTML-Tabellenlayouts zusammen mit den Beispielen und Ausgaben im Detail.

HTML-Eingabeplatzhalter HTML-Eingabeplatzhalter Sep 04, 2024 pm 04:54 PM

Leitfaden für HTML-Eingabeplatzhalter. Hier besprechen wir die Beispiele für HTML-Eingabeplatzhalter zusammen mit den Codes und Ausgaben.

HTML-geordnete Liste HTML-geordnete Liste Sep 04, 2024 pm 04:43 PM

Leitfaden zur HTML-geordneten Liste. Hier besprechen wir auch die Einführung von HTML-geordneten Listen und Typen sowie deren Beispiele

Text in HTML verschieben Text in HTML verschieben Sep 04, 2024 pm 04:45 PM

Anleitung zum Verschieben von Text in HTML. Hier besprechen wir eine Einführung, wie Marquee-Tags funktionieren, mit Syntax und Beispielen für die Implementierung.

HTML-Onclick-Button HTML-Onclick-Button Sep 04, 2024 pm 04:49 PM

Anleitung zum HTML-OnClick-Button. Hier diskutieren wir deren Einführung, Funktionsweise, Beispiele und Onclick-Events in verschiedenen Veranstaltungen.

See all articles